(1)审题时将题中重点写在纸上,要不会忘记题中的一些细节而得不到满分
(2)考虑0
(3)可以过样例,print直接
(4)万能头文件
#include <bits/stdc++.h>
using namespace std;
(5)使用&&的时候记得加括号啊,因为优先级不同
(6)判断
数a千位不为2----a/1000!=2
数a百位不为2----a%1000/100!=2
数a十位不为2----(a/10%10)!=2
数a个位不为2----a%10!=4
(7)一般题都验证一下,防止错误—方法:打表
(8)scanf 中不能加汉字提示啥的
scanf("%d",&n);
(9)数字转换为字符串
在字符串中寻找字符
参考:
https://blog.csdn.net/qq_43808611/article/details/107912412
(10)平方根,几次方
sqrt(n)
pow(2,n) 2的n次方
(11)scanf("%d",&n);没加&
输完后程序直接崩了
(12)会使用printf进行打表观察代码那一块有问题,调试代码。
(13)排序函数sort
sort(首元素地址,尾元素地址)
eg:sort(a,a+n); //将数组利用sort进行排序
(14)abs() 取绝对值,swap(x,y)交换两个数值
(15)做题时,先把题干简单写在纸上,然后分析功能与步骤,按照功能与步骤写
(16)最大公约数(4和6的最大公约数是2)
int gcd(int a,int b){
return !b ? a : gcd(b,a%b);
}
最小公倍数:
设上面得到的最大公约数为d
则最小公倍数为a/d*b
(17)数值太大时,使用long long
如:
代码:
long long n,m=0;
scanf("%I64d",&n);
printf("%I64d",m);
(1)因数值太大,所以需要定义long long型。
(2)long long 型输入输出是%I64d
(18)
(19)A-Z:65-90 a-z:97-122