09 2020 档案
摘要:#1081 检查密码 (15分) ##测试点2的坑 输入的密码可能有空格 解决:用getline一行一行读取 先getline一行,把第一行的数字n吃掉 ##代码 #include <iostream> #include <vector> #include <string> #include <cs
阅读全文
摘要:#1080 MOOC期终成绩 (25分) 参考:> https://blog.csdn.net/DoctorLDQ/article/details/86661835 ##测试点3超时 因为学号不是数字,因此不能用大数组做哈希表,直接用循环在vector中查找会导致第3个测试点超时。 因此使用map来
阅读全文
摘要:#1079 延迟的回文数 (20分) ##测试点234 测试点234是输入就是回文数的情况,特殊判断即可。 ##代码 #include <iostream> #include <vector> #include <string> #include <cstdio> //scanf printf防止超
阅读全文
摘要:#1075 链表元素分类 (25分) ##测试点5运行超时 用哈希映射存储每个节点的数据和next指针 ##代码 #include <iostream> #include <vector> #include <string> #include <cstdio> //scanf printf防止超时
阅读全文
摘要:#1074 宇宙无敌加法器 (20分) ##测试点1,3,5 测试点1,3 所有数字加完之后,若有进位,还要多输出一位1 测试点5 两个数字为0的情况 ##代码 #include <iostream> #include <vector> #include <string> #include <cst
阅读全文
摘要:#1073 多选题常见计分法 (20分) ##两个比较坑的地方 1.漏选也算错误 2.按照选项错误的最多输出,而不是题目错误的最多,不要被样例误导了 要命,搞了近3个小时 ##代码 #include <iostream> #include <vector> #include <string> #in
阅读全文
摘要:#1069 微博转发抽奖 (20分) 从s-1开始计数,不要在一开始就count ##代码 #include <iostream> #include <vector> #include <string> #include <cstdio> //scanf printf防止超时 #include <a
阅读全文
摘要:#1068 万绿丛中一点红 (20分) ##思路 两个要点 1.四周一圈都要比较,大于tol 2.颜色要唯一 思路: 1.先把每个像素点的颜色都存起来,排个序。 2.对每个像素点的一周的像素比较,找出符合要求的点,存到一个vector中 3.对该vector的每个像素点的颜色去查找有无重复的,如果没
阅读全文
摘要:#1067 试密码 (20分) ##getline要注意的点 getline是从整个输入区的第一行一行一行往下读取的 第一次读取的是第一行正确密码和最大输入次数。 所以从第二行开始读取输入的密码,进行判断 #include <iostream> #include <vector> #include
阅读全文
摘要:#1065 单身狗 (25分) ##测试点1的坑 建立哈希表的时候,我们要注意他的编号是从0开始的 所以哈希表初始值是0的话会有错误 例如 3 11111 00000 33333 44444 55555 66666 2 11111 0 输出: 2 11111 00001(出现错误) 11111的伴侣
阅读全文
摘要:#1064 朋友数 (20分) ##哈希表 建立一个哈希表,对于每一个数,把数的每一位加起来,存到哈希表中 由于数字都是正整数,且小于10000,那么数字范围是19999 哈希表136,建立一个int hash[37]即可 ##代码 #include <iostream> #include <vec
阅读全文
摘要:#1060 爱丁顿数 (25分) ##思路 首先想到的肯定是暴力穷举,这肯定超时。 正确思路 爱丁顿数的最大数目就是天数N:即每天骑行数都超过N;最小数目是0,每天都不动。 确定爱丁顿数范围是[N,0] 先进行递减排序 查找骑行数大于N的天数M 判断: 分三种情况 1.M>N 那么爱丁顿数是N 2.
阅读全文
摘要:#1059 C语言竞赛 (20分) 参考:https://www.cnblogs.com/exciting/p/10347425.html 参考:https://www.codenong.com/cs105912348/ ##测试点1,2超时:哈希表 必须使用哈希表,否则超时 以数组下标作为查询的I
阅读全文
摘要:#1058 选择题 (20分) ##getline的问题 学生的答案()与()之间有空格,用getline读取一整行 在这之前,先用getline读取一行内容,接下来才能正确读取 ##代码 #include <iostream> #include <vector> #include <string>
阅读全文
摘要:#1056 组合数的和 (15分) ##思路 找规律 n个数字:a1,a2,...an 比如有5个数 a1,a2,a3,a4,a5 对于a1:a1a2,a1a3,a1a4,a1a5 等于 a1 * 10 * (5-1)+a2+a3+a4+a5 依次类推,再加起来得到公式。 公式是:(a1+a2+..
阅读全文
摘要:#1055 集体照 (25分) ##string中的compare() string自带的compare可以按照字典序来比较大小,返回值与0比较大小 str1.compare(str2) //str1小于str2,返回负数 //str1等于str2,返回0 //str1大于str2,返回正数 //r
阅读全文
摘要:#1052 卖个萌 (20分) ##测试点1的坑 题目说**“这里只给出符号在相应集合中的序号(从 1 开始)”** 说是这么说,但是他有可能给你的是0或者是负数 不能仅仅判断序号小于集合中元素个数 还要判断序号是否大于0 ##代码 #include <iostream> #include"stdl
阅读全文
摘要:#1051 复数乘法 (15分) ##测试点2,测试点3的坑 题目说实部虚部均保留两位小数 ###测试点2: 如果虚部小于-0.05才算是负数 转换符号后绝对值小于0.005的归零 ###测试点3: 实部绝对值小于0.005的归零 ##代码 #include <iostream> #include"
阅读全文
摘要:#1049 数列的片段和 (20分) ##测试点2的坑 double不行,必须使用long double 思路:找规律即可 {0.1 0.2 0.3 0.4} 0.1 4 4*1 0.2 3+3 3*2 0.3 3+3 2*3 0.4 4 1*4 {0.1 0.2 0.3 0.4 0.5} 0.1
阅读全文
摘要:#1045 快速排序 (25分) 参考:> https://www.cnblogs.com/fromzore/p/9600974.html ##思路 用两重循环当然超时,使用algorithm中的sort,或者自己写快排,进行排序 快排前后基准数的位置是相对不变的,所以找到所有相同位置的数 但是仅仅
阅读全文
摘要:#1044 火星数字 (20分) ##输入错误 这是一个很坑的地方 输入是 4 29 5 elo nov tam 第一步cin>>4之后 要加一步getline,把4这行读取了。然后再按行读取内容 **因为getline是从第一行“4”开始读取的,**如果不注意,会造成错误 ##代码 #includ
阅读全文
摘要:#1038 统计同成绩学生 (20分) ##运行超时 cin,cout换成scanf和printf即可 头文件 #include ##代码 #include <iostream> #include"stdlib.h" #include <vector> #include <string> #incl
阅读全文
摘要:#1037 在霍格沃茨找零钱 (20分) ##两个要注意的地方 输入用scanf更方便 scanf("%d.%d.%d %d.%d.%d",&P_Ga,&P_Si,&P_Kn,&A_Ga,&A_Si,&A_Kn); 判断条件 if(P_Ga>A_Ga||(P_Ga==A_Ga&&P_Si>A_Si)
阅读全文
摘要:#1035 插入与归并 (25分) ##测试点2未通过 得分:24/25 判断插入还是归并: 输入n1,n2数组 从后往前找n1和n2第一个不同的元素i,排序n1前i个元素,与n2进行比较,如果一样就是插入排序,否则是归并排序。 ##代码 #include <iostream> #include"s
阅读全文
摘要:#1034 有理数四则运算 (20分) ##测试点2:结果错误 “分子和分母全是整形范围内的整数”,但是两个整数相乘会超出整数int的范围。 在未化简之前,乘法过程中,分子分母相乘可能会超出范围。 使用long long ,而不是long(和int一样是4个字节) 用法:"%lld" ##测试点3:
阅读全文
摘要:#1033 旧键盘打字 (20分) ##第二个测试点 **题目保证第 2 行输入的文字串非空。**这句话的意思是第一行输入的字符串可能是空。 这就是第2个测试点的坑。 用getline()来读取第一行,这样来解决第一行是空的问题。 #include <string> string str1,str2
阅读全文
摘要:#1028 人口普查 (20分) ##运行超时 读取的时候“2014/06/07”不要当作一个字符串来读取,而是用scanf("%d/%d/%d", )来读取 每一次读取输入都要做一次判断 ##代码 #include <iostream> #include"stdlib.h" #include <v
阅读全文
摘要:#1025 反转链表 (25分) ##难点/坑:测试点5,测试点6 测试点6:没有说所有给的测试点都是有效的,从头到尾遍历链表后,要更新节点数目。 比如说: 00100 8 4 00000 4 99999 00100 1 12309 68237 6 -1 33218 3 00000 99999 5
阅读全文
摘要:#1020 月饼 (25分) ##注意: ###double类型多次乘除过后可能会有微小差异 如果是把每种月饼单价都求出来,再乘以库存,最后加起来,会导致第三个测试点不能通过 举个例子: double a=90; double b=a/15; double c=b*15; c不一定是90,可能是90
阅读全文
摘要:#注意 有几个测试点总是通不过 1.输入是6174的时候,由于while的判断条件程序会直接跳过,必须在while之前进行判断 2.输入N为0<N<1000时,不是四位数,必须在前面进行补零。比如输入3,补成0003 #代码 #include <iostream> #include"stdlib.h
阅读全文
摘要:#1015 德才论 (25分) 重点 运行超时问题: 1.使用scanf和printf输入输出 2.sort使用algorithm自带的,配合vector使用,不要自己写 3.在输入的时候直接进行筛选操作,而不是把所有输入数据存储完,再一步步操作(这样会导致3个测试点超时). 4.用class或者s
阅读全文
摘要:1011 ## 不同变量类型能装下多大的数字 #include <cstdio>; long long A; scandf("%lld",&A); 在实际使用中,long和int都是4个字节。long long是8个字节。 1012 控制数字的精度 使用setprecision()函数,它的头文件是
阅读全文
摘要:##1010 一元多项式求导 (25分) 笔试或者考试的时候不会让你上网查的,所以一些c++语法细节还是要多记 题目 设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为nx(n−1) 。) 输入格式: 以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数
阅读全文

浙公网安备 33010602011771号