原题链接:数字整除
解题思路:比较蠢的方法,每次只看最后三位数,按照给定方法操作,然后更新前两位数,最后一位数清零,就不用管他,重复操作,知道还剩前两位数,模17判断,另外注意的就是char和int的互相转化
注意事项:
参考代码:
#include <stdio.h>
main() {
char a[100];
while(gets(a)!=0){
if(a[0]=='0')break;
int s=strlen(a);
while(s>2){
int x=0;
x=(a[s-3]-'0')*10+(a[s-2]-'0')-(a[s-1]-'0')*5;
a[s-3]=(x/10)+48;
a[s-2]=(x%10)+48;
a[s-1]=0;
s--;
}
int i=10*(a[0]-'0')+(a[1]-'0');
if(i%17==0)printf("1\n");
else printf("0\n");
}
}
0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复