NYOJ 105 九的余数

原题链接

这题的技巧是:能被3整除的自然数各位的和能被3整除,9也同理。

再也不把strlen放进循环里了。这次放进去直接超时了我去。

附ac代码:

#include <stdio.h>
#include <string.h>
#define MAX 1000000 + 2
char s[MAX];

int main(){
	int t, sum;
	scanf("%d", &t);
	while(t-- && scanf("%s", s)){
		sum = 0;
		int len = strlen(s);
		for(int i = 0; i != len; ++i)
			sum += s[i] - '0';
		printf("%d\n", sum % 9);
	}
	return 0;
}

原超时代码

 
#include <stdio.h>
#include <string.h>
#define MAX 1000000 + 2
char s[MAX];

int main(){
	int t, sum;
	scanf("%d", &t);
	while(t-- && scanf("%s", s)){
		sum = 0;
		for(int i = 0; i != strlen(s); ++i) //教训...%>_<%
			sum += s[i] - '0';
		printf("%d\n", sum % 9);
	}
	return 0;
}        


posted on 2014-02-12 16:28  长木Qiu  阅读(146)  评论(0)    收藏  举报