hdu1013Digital Roots
来源:互联网 发布:清朗网络海报 编辑:程序博客网 时间:2024/06/14 06:38
题目链接
/*
要说明的是,这道题不能用int 类型,要用字符类型。
*/
#include<stdio.h>#include<string.h>char num[110];int main(){ while(~scanf("%s",num) && num[0]!='0') { int len = strlen(num); int sum = 0; int i; for( i= 0; i < len; i++) { sum += num[i] - '0'; } while(sum > 9) { int a = 0; while(sum > 0) { a += sum % 10; sum /= 10; } sum = a; } printf("%d\n",sum); } return 0;}
才发现还有另一种做法:
n=0 1 2 3 4 5 6 7 8 9 10 11 12 13 ......... 100 101 102 103 ....
roots=0 1 2 3 4 5 6 7 8 9 1 2 3 4 .......1 2 3 4....
原来是以1.....9为循环节的。想想也是,每次增加1,那么层层迭代下来,最终当ans<10的时候也是每次增加了1。如此,可以归纳出
roots=(n-1)%9+1
#include<stdio.h>#include<string.h>int main(){ int i,n,tmp; char a[1003]; while (scanf("%s",&a)&&a[0]!='0') { n=0; for (i=0;i<strlen(a); i++) { n+=a[i]-48; } printf("%d\n",(n-1)%9+1); } return 0;}
0 0
- HDU1013Digital Roots
- hdu1013Digital Roots
- HDU1013Digital Roots
- Digital Roots
- Primitive roots
- Digital Roots
- Digital Roots
- Digital Roots
- ZOJ_1115_Digital Roots
- Digital Roots
- POJ_1284_Primitive Roots
- Digital Roots
- Digital Roots
- Digital Roots
- Digital Roots
- Digital Roots
- Digital Roots
- Digital Roots
- android中的fragment
- DLR、ASTER GDEM、SRTM3、GMTED2010等5种全球高程数据对比
- uikit——UIView——drawing
- 第四次作业-杨辉三角
- js控制li的样式,多应用于网站栏目导航默选项
- hdu1013Digital Roots
- 一个新手对javaWeb的看法
- Fast RCNN算法详解
- Gradle安装笔记
- BZOJ 2326: [HNOI2011]数学作业
- core文件被截断问题的解决办法
- js设置打印前后函数
- WOJ 643 Soul Artist 坐标变换+矩阵前缀和
- 通用带分页的sql2000存储过程和asp调用方法