机试踩坑指南(小白笔记):
0. pow函数返还值为 double型, 强制转化为int时,有些数据会出现错误. 解决办法:建议自己重写个int型的pow1;
1. 在处理字符串输入时,如果要读入空格,并且在前面用过cin的情况下, 用getline() 会略过getline()函数,原理B站率辉讲解. 解决办法:getline()前面加一个getchar() 过滤来自cin的回车;
2. 在处理填数问题时,一定要注意二维数组的初始化,要不然会影响第二次的输入. 解决办法: 使用memeset(),注意加头函数;
3. 关于补0问题, 使用printf更加方便 ``` printf("%0*nd",a); //n是位数.```
cout的使用办法是 ```cout.fill('0');//补的东西 cout.width(2)//位数``` 在iomanip头文件里面;
4. 闰年问题:普通闰年是4的倍数,而不能是100的倍数
世纪闰年必须是400的倍数,而且是整百数.
5.数大时for循环里面的变量i最好也定义成long 型,要不然最后答案对了,就是AC不了
6.for循环从 i = 1开始的时候,记得循环的截至条件要改成 <=
7.对于数组的输入,建议使用scanf 和printf,效率更好.
8.对于读入一个字符时,如果使用scanf+ %c的方式读入,应该考虑前面有没有输入,因为会读入\n. 解决方法同1. 或者以字符串的方式读入字符,然后取字符串的首位就行
9.全局数组,一定要用memset() ,特别是bool的状态数组,要不然绝对会影响到下一组数据,除非是input数组
老哥上岸了吗
上岸了
恭喜恭喜,我是今年打算冲波中南,但听说943算法题好难啊,怕搞不定
getline函数前面怎么加getchar
比如说
中南大学吗?
嗯
中南大学研究生?(计算机还是软工)
软工
加油!不过中南软件与计算机合并了,现在统称计算机学院