摘要:
大整数运算 对一道A+B的题目,如果A和B的范围在int范围内,那么相信大家很快就能写出程序。但是如果A和B是有着1000个数位的整数,恐怕就没有办法用已有的数据类型来表示了,这时就只能老实去模拟加减乘除的过程。怎么样?听起来像是小学生学的东西吧?实际上原理就是小学的,所以不要去害怕这个看上去很高深 阅读全文
摘要:
水题~。 struct Node { string id; int virtue,talent; int total; bool operator<(const Node &W) const { if(total == W.total) { if(virtue == W.virtue) return 阅读全文
摘要:
一眼二分。 注意点: 在读入n之后要使用getchar接收后面的换行符,否则会使for循环内的getline读入这个换行符,导致第一个字符串读取错误。 最后输出答案前要先check一遍 const int N=110; string a[N]; string suffix; int n; bool 阅读全文
摘要:
水题~。 map<char,char> mp; int n; void init() { mp['1']='@'; mp['0']='%'; mp['l']='L'; mp['O']='o'; } int main() { init(); cin>>n; vector<pair<string,str 阅读全文
摘要:
采用试除法求约数,注意对$1$的特判。 int n; bool check(int n) { int res=1; for(int i=2;i*i<=n;i++) if(n % i == 0) { res+=i; if(i != n/i) res+=n/i; } return res==n; } i 阅读全文
摘要:
试除法求约数。 int check(int n) { int res=1; for(int i=2;i*i<=n;i++) if(n % i == 0) { res+=i; if(i != n/i) res+=n/i; } return res; } int main() { vector<int> 阅读全文
摘要:
试除法求约数个数。 int n; int divisor(int n) { int res=0; for(int i=1;i*i<=n;i++) if(n % i == 0) { res++; if(i != n/i) res++; } return res; } int main() { whil 阅读全文