编号(太晚了,先发一题,可能以后题都单发了,方便分类整理)

简介: 编号(太晚了,先发一题,可能以后题都单发了,方便分类整理)

编号 - NYOJ


/*结构体数组,属性包括顺序,城市,年份,后六位,输入时存下顺序,

然后结构体多关键字排序,

遍历结构体数组,前后年份一致则后六位= cnt++;

不一致则cnt= 1,后六位 = cnt ++;

最后按照输入顺序排序,再遍历输出


以上为蒟蒻(我的)做法

***********************


进阶流程如下

结构体数组a[N]按照年份从小到大排序

遍历结构体数组,哈希思想:后六位 = hash[a[N].year]++;

简单,细节少

最后同样的输出手法


**********************

套路及使用场景

1、输入顺序储存

const int N = 1e6;
struct city{
    int <数据>,No;
}a[N];
bool cmp(city x,city b){
    return x.No < y.No;
}
for(int i = 1;i <= n;i++){
    cin >> a[i].<数据>
    a[i].No = i;
}
…………
sort(a+1,a + 1 + n,cmp);
for(int i = 1;i <= n;i++){
    cout << a[i].<……>;
}
return 0;

场景是输入的数据明显需要排序求解,但输出要按原顺序

2、哈希表

for(int i = 1;i <= n;i++){
    a[i].<1> =  hash[a[i].<2>]++;
}

关于这个哈希的套路,暂时归结不出什么前提条件,留待与其他哈希题比较

*/

完整ac代码

#include <algorithm>
#include <iostream>
using namespace std;
const int N = 1e6;
struct M{
    int Year,City,No,yz;
}a[N];
bool cmp01(M x,M y){
    return x.Year < y.Year;
}
bool cmp02(M x,M y){
  return x.No < y.No;
}
int cnt[N];
int main(){
    int n,m;
    scanf("%d%d",&n,&m);
    for(int i = 1;i <= m;i++){
        scanf("%d%d",&a[i].City,&a[i].Year);
        a[i].No = i;
    }
    sort(a+1,a+m+1,cmp01);
    for(int i = 1;i <= m;i++){
        a[i].yz = ++cnt[a[i].City];
    }
    sort(a+1,a+m+1,cmp02);
    for(int i = 1;i <= m;i++){
        printf("%06d%06d\n",a[i].City,a[i].yz);
    }
    return 0;
}
目录
相关文章
|
安全 网络安全 数据安全/隐私保护
OA办公系统选购注意的事项
随着数字化时代的到来,越来越多的企业开始选择使用OA办公系统来提高工作效率和管理效果。然而,在选购OA办公系统时,需要注意以下几点的事项,希望能对企业选购OA办公系统有所帮助。
240 4
|
域名解析
超简单 图解 三级域名解析
超简单 图解 三级域名解析 最近自己在玩 搭建 ngrok 内网穿透,用到了三级域名解析,类似:blog.ngrok.xxx.com 查了下,发现这类的教程非常少,于是,我来造福你们了 下面开始 一、添加二级域名解析 主机记录填写你要使用的二级域名,我填的ngrok, 记录值填你服务器的IP地址 二、添加三级域名解析 主机记录填写 你要用的(三级域名.二级域名)我这里是泛解析,用了*.ngrok,你可以泛解析到你的二级域名,记录值填写你刚刚添加的二级域名。
12662 3
|
监控 算法 自动驾驶
主流的目标检测算法是那种?
主流的目标检测算法是那种?
|
11月前
|
程序员
DIY|ikbc C87 机械键盘有线改蓝牙小结
ikbc C87 机械键盘有线改蓝牙后,我变得焦虑了。
298 0
|
安全 数据安全/隐私保护 虚拟化
win11家庭版怎么升级专业版
Windows 11家庭版用户常需升级到专业版以解锁远程桌面、组策略和BitLocker等高级功能。在升级前,备份数据、确保系统更新至最新。购买正版密钥后,通过“设置”-&gt;“系统”-&gt;“激活”输入密钥进行升级。遵循提示完成升级过程,系统会自动应用专业版特性。如有问题,参考官方文档或寻求技术支持。
win11家庭版怎么升级专业版
|
监控 关系型数据库 分布式数据库
PolarDB产品使用问题之如何配置端口
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
JavaScript Java 测试技术
基于ssm+vue.js+uniapp小程序的地方特色美食分享管理系统附带文章和源代码部署视频讲解等
基于ssm+vue.js+uniapp小程序的地方特色美食分享管理系统附带文章和源代码部署视频讲解等
109 4
|
机器学习/深度学习 人工智能 算法
可训练软决策树集成的多实例学习
可训练软决策树集成的多实例学习 可训练软决策树集成的多实例学习 作者:Andrei Konstantinov†、Lev Utkin†和Vladimir Muliukha*,† 彼得大帝圣彼得堡理工大学人工智能系,Polytechnicheskaya,29195251,俄罗斯圣彼得堡 * 通信地址应为的作者。 † 这些作者对这项工作做出了同样的贡献。 算法2023,16(8),358;https://doi.org/10.3390/a16080358 接收日期:2023年6月22日/修订日期:2023.7月17日/接受日期:2023:7月24日/发布日期:2023-7月26日 (本文属于进化算法
141 0
|
区块链 Python Windows
python项目打包成exe文件
python项目打包成exe文件
214 0
|
程序员 Windows

热门文章

最新文章