问题:在JOBDU团队里,陈博是最讲平均主义的人,对数字十分敏感。事实上,他还是个数字完美主义者。例如看到N个数字的时候,从1到N的每个数都需要在其中出现且仅出现一次,否则他就觉得这个数字序列不完美。后来,我明白了:这是排列!
对于一个整数序列d1, d2, d3 ... dn,你是否能够算出至少改变其中的几个数,才能把他们变成从1到N的一个排列?例如,对于整数序列 3, 2, 2,我们只需要将其中的一个2改为1就能得到一个从1到3的排列:3, 1, 2
输入:每个测试文件包含多个测试案例,每个测试案例两行,第一行包括一个整数N,代表整数序列的长度,第二行是以空格隔开的N个整数,代表该整数序列。其中我们能保证1 <= N <= 10^5,每个整数的长度不超过100.
输出:对于每个整数序列,输出一行,包含一个整数,表明至少要改变该整数序列的多少个数才能得到一个从1到N的排列。
实现代码:
#include <iostream>
#include <bitset>
#include <string>
using namespace std;
int main(int argc,char *argv[]){
int len,index;
unsigned long input_num,n,c,total;
string input;
bitset<100001> bs(0);
for(;cin>>n;){
for(c=0;c<n;++c){
cin>>input;
len=input.length();
if(len>6){
continue;
}else{
const char *num=input.c_str();
for(input_num=0,index=0;index<input.length();++index){
input_num=input_num*10+num[index]-'0';
}
if(input_num>100000) continue;
else bs[input_num]=1;
}
}
for(total=0,c=1;c<=n;++c){
if(bs[c]==0) ++total;
}
cout<<total<<endl;
bs.reset();
}
return 0;
}
运行结果:
- 大小: 6.4 KB
分享到:
相关推荐
已改-被征地农民利益保护制度创新研究:陈博-论文.zip
12.3陈博SQL作业.sql
陈博利用互联网技术实现猕猴桃产业的创新销售模式,这一做法对于传统农业产业的现代化转型具有重要的参考价值。猕猴桃产业作为周至县的立县产业,其销售与推广对于地区经济发展至关重要。陈博自2004年起,通过创立...
这是之前给ACM集训队的师弟师妹们做培训用的原创课件。 由于我个人认为语言表达才是主题,课件只是辅助,因此课件的文字不多,偏向于画图说明。课件内容是深度搜索和广度搜索的基本思想,非常基础,希望能够对有需要...
很抱歉,但根据您给出的信息,这个压缩文件“已改-被征地农民利益保护制度创新研究:陈博.zip”似乎包含的是关于社会学、政策研究或者农业经济领域的文档,而不是IT行业的专业知识。标题和描述提及的是“被征地农民...
陈博教授的课程,专注于软件系统建模,旨在帮助学生掌握这一核心技能,为应对建模考试和期末复习提供了扎实的基础。 建模是将现实世界的复杂问题转化为易于理解和处理的抽象模型的过程。在软件开发中,建模可以帮助...
在USTC(中国科学技术大学)的课程中,赵振刚和陈博两位专家深入讲解了这一主题,帮助学生理解和掌握如何编写和优化设备驱动。 设备驱动程序是操作系统内核的一部分,它们为操作系统提供了一种抽象的方式,使得操作...
根据提供的文档标题、描述、标签以及部分内容,我们可以总结出该文档主要探讨了“智能反爬虫”的主题,尤其是从极验(Geetest)的角度出发,介绍了一些与反爬虫技术相关的概念和技术细节。下面将对这些知识点进行...
系统建模是IT领域中一个重要的概念,尤其在软件工程和计算机科学的教育中占有显著地位。科大软院2018系统建模期末考试显然聚焦于考察学生对这一主题的理解与应用能力。让我们深入探讨一下这个考试可能涉及的关键知识...
单片机技术是嵌入式系统中的重要组成部分,它是一种集成在单一芯片上的微型计算机,具有数据处理和控制功能。单片机广泛应用于各种设备和系统中,如家电控制、汽车电子、工业自动化、物联网设备等。...
《Linux实用教程》电子教案的第9章主要涵盖了Linux编程基础,包括编程风格、IDE的使用、GNU cc的运用、程序调试、源程序管理以及软件打包等关键知识点。以下是详细内容: 1. Linux编程风格: - Linux软件开发通常...
HeyCar项目是一个周四进行的大型软件工程任务,涉及团队成员包括刘昱昊、罗雨辰、陈博楠、王珊珊、田陇宁、方潇玥和张嘉麟。从标签"JavaScript"我们可以推断,这个项目的核心技术栈是基于JavaScript的。...
Linux实用教程是一个全面的入门指南,旨在帮助初学者掌握Linux操作系统的基本使用和管理技能。Linux是一种免费开源的操作系统,广泛应用于服务器、桌面环境以及各种嵌入式设备中。本教程涵盖了Linux系统的诸多方面,...
在2018年11月12日发布的家电行业周报中,分析师陈博对家电行业在双11期间的表现进行了深入分析。周报指出,尽管家电行业整体在股市中表现不佳,特别是照明设备和白色家电板块在周内出现了显著的下跌,但是小家电板块...
- `20204246006-陈博戬-机器学习期末作业.docx` 和 `20204246006-陈博戬-机器学习期末作业.pdf`: 这些可能是陈博戬同学的机器学习作业的Word和PDF版本,里面可能包含了他对机器学习理论的理解、算法实现和分析结果...
Linux实用教程知识点整理大全 人民邮电出版社 陈博 孙宏斌 编著 计算机专业 曲阜师范大学 2011级软件工程专业
7. **产品开发**:李亚峰、曹向林、陈博和陈百航可能参与了产品从概念设计到最终实现的全过程,包括需求分析、设计、编码和发布。 8. **阶梯单价**:这可能涉及到定价策略,可能是在产品开发中实现的一种根据购买量...
AS深圳2018-《企业级+Node.js+Web+框架研发与落地》-不四.pdf AS深圳2018-《万台规模服务...AS深圳2018-高并发大容量消息推送后台系统架构演进-陈博.pdf AS深圳2018-《陆金所互金平台异步消息系统实践》-李貌-v1.2.pdf