{ "question_id": 1093013, "question_title": "偶数 or 奇数", "question_content": "偶数 or 奇数\n时间限制: 1 Sec 内存限制: 128 MB\n题目描述\n编程班老师搞了一个有 N (1 <= N <= 100) 个正整数 I (1 <= I <= 10^60) 的表,叫 同学们去统计每个数里面数字(0,1,2,3,4,5,6,7,8,9)(注 0 为偶数)的奇偶数 字个数。写一个程序读入 N 个整数,统计每个整数的数字奇偶个数。\n输入\n第 1 行: 一个单独的整数: N \n第 2 到第 N+1 行: 每行一个长长(小于等于 60 位)的整数,需要统计数字奇偶个数。\n输出\n 1..N 行: 第 j 行根据第 j 个整数输出奇数个数与偶数个数。\n样例输入\n2\n1024\n5931\n样例输出\n1 3\n4 0", "difficulty": "中等", "answer_id": 1301954, "answer_content": "代码本身没有什么问题\n关键是10^60\n因此long long可能也不够,应该用字符串。\n\n\n```\n#include\n#include\nusing namespace std;\nstring a[105];\nint b[105],c[105];\nint qiujishu(string x){\n int jishu=0;\n for(int i = 0; x.c_str()[i]; i++){\n if ((x.c_str()[i] - '0') % 2 == 1) jishu++;\n }\n return jishu;\n}\nint qiuoushu(string x){\n int oushu=0;\n for(int i = 0; x.c_str()[i]; i++){\n if ((x.c_str()[i] - '0') % 2 == 0) oushu++;\n }\n return oushu;\n}\nint main()\n{\n int n;\n cin>>n;\n for(int i=1;i<=n;i++){\n cin>>a[i];\n b[i]=qiujishu(a[i]);\n c[i]=qiuoushu(a[i]);\n }\n for(int i=1;i<=n;i++){\n cout<\n#include\nusing namespace std;\nstring a[105];\nint b[105],c[105];\nint qiujishu(string x){\n\tint jishu=0;\n\tfor(int i = 0; x.c_str()[i]; i++){\n\t\tif ((x.c_str()[i] - '0') % 2 == 1) jishu++;\n\t}\n\treturn jishu;\n}\nint qiuoushu(string x){\n\tint oushu=0;\n\tfor(int i = 0; x.c_str()[i]; i++){\n\t\tif ((x.c_str()[i] - '0') % 2 == 0) oushu++;\n\t}\n\treturn oushu;\n}\nint main()\n{\n\tint n;\n\tcin>>n;\n\tfor(int i=1;i<=n;i++){\n\t\tcin>>a[i];\n\t\tb[i]=qiujishu(a[i]);\n\t\tc[i]=qiuoushu(a[i]);\n\t}\n\tfor(int i=1;i<=n;i++){\n\t\tcout<