九余数定理
2016-07-29 17:34
218 查看
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1013
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
int sum,k;
while(cin>>str&&str[0]!='0')
{
sum=0;
for(int i=0;i<str.length();i++)
{
k=str[i]-'0';
sum+=k;
}
if(sum%9==0)
{
cout<<"9"<<endl;
}
else
cout<<sum%9<<endl;
}
return 0;
}
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1280
此题跟上面一题一样要用九余数定理,但因为 N^N 数太大,因此要用 (a+b)%c=(a%c+b%c)%c ;
#include <iostream>
using namespace std;
int main()
{
int s,s1,sum;
while(cin>>s && s!=0)
{
sum=1;
s1=s;
s%=9;
for(int i=1;i<=s1;i++)
{
sum=(sum*s)%9;
}
if(sum==0) cout<<"9"<<endl;
else cout<<sum<<endl;
}
return 0;
}
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
int sum,k;
while(cin>>str&&str[0]!='0')
{
sum=0;
for(int i=0;i<str.length();i++)
{
k=str[i]-'0';
sum+=k;
}
if(sum%9==0)
{
cout<<"9"<<endl;
}
else
cout<<sum%9<<endl;
}
return 0;
}
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1280
此题跟上面一题一样要用九余数定理,但因为 N^N 数太大,因此要用 (a+b)%c=(a%c+b%c)%c ;
#include <iostream>
using namespace std;
int main()
{
int s,s1,sum;
while(cin>>s && s!=0)
{
sum=1;
s1=s;
s%=9;
for(int i=1;i<=s1;i++)
{
sum=(sum*s)%9;
}
if(sum==0) cout<<"9"<<endl;
else cout<<sum<<endl;
}
return 0;
}
相关文章推荐
- Sublime Text加上Eclipse
- c#中从string数组转换到int数组
- wordcount_肖斌
- win10 uwp 圆角按钮
- poj 1258 Agri-Net
- IOS_study day 01
- ubuntu设置mysql编码 大坑
- hive处理实际数据时数据总量的问题
- dba_tablespaces和dba_data_files的关系
- 备忘录模式
- linux的几个内核镜像格式Image 和 u-boot启动内核和文件系统时的一些环境变量的设置
- 物理机无法连接虚拟机内Linux的解决方法
- Window下使用虚拟机Ubuntu编译Ffmpeg(编译的只有arm平台下的)
- Docker 的步伐:DevOps 与 OS 化
- 推荐算法概览
- Emacs杂谈(一)Emacs环境 c++ 快捷键
- elk 分布式数据同步
- spring mvc get请求乱码
- L1-020. 帅到没朋友
- 图解集合1:ArrayList