HDU 1013 Digital Roots
2014-10-04 17:05
519 查看
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1013
可以用简单模拟的方法做;简单模拟法题解链接:http://blog.csdn.net/dyangel2013/article/details/39780491
也可以用数学方法先找到规律;再求解;
数学找规律代码:
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main()
{
for(int i=1;i<=100;i++)
{
int sum=0;
int n=i;
cc: while(n>0)
{
sum=sum+n%10;
n=n/10;
}
if(sum>9)
{
n=sum;
sum=0;
goto cc;
}
printf("%d\n",sum);
}
return 0;
}
可以看到是以9为周期的数组;
下面贴上
AC代码:
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main()
{
char str[1000];
while(cin>>str && strcmp(str,"0"))
{
int n=0;
int len=strlen(str);
for(int i=0;i<len;i++)
n=n+str[i]-'0';
int a[10];
for(int i=1;i<=9;i++)
a[i]=i;
n=n%9;
if(n==0)//这一步处理是为了解决当输入的值为9的倍数时;输出的为9
n=9;
printf("%d\n",a
);
}
return 0;
}
可以用简单模拟的方法做;简单模拟法题解链接:http://blog.csdn.net/dyangel2013/article/details/39780491
也可以用数学方法先找到规律;再求解;
数学找规律代码:
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main()
{
for(int i=1;i<=100;i++)
{
int sum=0;
int n=i;
cc: while(n>0)
{
sum=sum+n%10;
n=n/10;
}
if(sum>9)
{
n=sum;
sum=0;
goto cc;
}
printf("%d\n",sum);
}
return 0;
}
可以看到是以9为周期的数组;
下面贴上
AC代码:
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main()
{
char str[1000];
while(cin>>str && strcmp(str,"0"))
{
int n=0;
int len=strlen(str);
for(int i=0;i<len;i++)
n=n+str[i]-'0';
int a[10];
for(int i=1;i<=9;i++)
a[i]=i;
n=n%9;
if(n==0)//这一步处理是为了解决当输入的值为9的倍数时;输出的为9
n=9;
printf("%d\n",a
);
}
return 0;
}
相关文章推荐
- hdu 1013 Digital Roots 用一个大水题来纪念我进入杭电前一万名
- HDU 1013 Digital Roots
- HDU 1013 Digital Roots
- hdu 1013 Digital Roots
- hdu 1013 Digital Roots
- hdu 1013 Digital Roots 没注意细节,是1A不了水题的
- HDU 1013 Digital Roots
- hdu_1013_Digital Roots_必须用高精度
- HDU 1013 Digital Roots(求数根,九余数定理)
- hdu 1013 Digital Roots(水题)
- hdu 1013 Digital Roots
- HDU 1013 Digital Roots
- hdu-1013 Digital Roots
- HDU—— 1013 Digital Roots
- hdu 1013 Digital Roots
- hdu 1013 Digital Roots(简单题)
- hdu1013 Digital Roots
- HDU-1013-Digital Roots(Java && 大数 && 数根)
- HDU 1013 Digital Roots (简单题_大数)
- hdu 1013 Digital Roots (找规律)