Basic remains POJ - 2305 同余模 高精度处理

题意 给出B(10以内大于0)进制下 p (1000位以内)和m(9位以内) 求 p%m 在b进制下等于什么

思路: 可以计算   1e9不会溢出Int所以m在int值以内  先求m  要处理p  每次取一位模刚刚的m即可(b^n 也要不停模)

坑点 : p可能等于0  这时候要输出0

 1 #include<cstdio>
 2 #include<cstring>
 3 #include<vector>
 4 #include<cmath>
 5 #include<iostream>
 6 using namespace std;
 7 
 8 char s1[1005],s2[600];
 9 vector<int>q;
10 int main(){
11     int b,p,m;
12     while(scanf("%d",&b)==1&&b){
13         scanf("%s%s",s1,s2);
14         int len1=strlen(s1);
15         int len2=strlen(s2);
16         long long  temp1=0,temp2=0;
17         q.clear();
18       //    cout<<s1<<" "<<s2<<endl;    
19         int zz=1;
20         for(int i=len2-1;i>=0;i--){
21             temp2+=zz*(s2[i]-'0');
22             zz*=b;
23         }
24         zz=1;
25 
26         for(int i=len1-1;i>=0;i--){
27             temp1+=(zz*(s1[i]-'0'))%temp2;
28         //    cout<<temp1<<endl;
29             temp1%=temp2;
30             zz*=b;
31             zz%=temp2;
32         }
33         //cout<<temp1<<temp2<<endl;
34         int ans=temp1%temp2;
35         //cout<<ans<<endl;
36         if(temp1==0){
37             printf("0\n");
38             continue;
39         }
40         while(ans){
41             q.push_back(ans%b);
42             ans/=b;
43         }
44         for(int i=q.size()-1;i>=0;i--){
45             printf("%d",q[i]);
46         }
47         printf("\n");
48 
49     }
50     return 0;
51 }

 

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
正在热议
更多
# 春招至今,你的战绩如何? #
9757次浏览 91人参与
# 你的实习产出是真实的还是包装的? #
1758次浏览 40人参与
# 米连集团26产品管培生项目 #
5761次浏览 214人参与
# 军工所铁饭碗 vs 互联网高薪资,你会选谁 #
7464次浏览 43人参与
# 简历第一个项目做什么 #
31568次浏览 330人参与
# 重来一次,我还会选择这个专业吗 #
433365次浏览 3926人参与
# MiniMax求职进展汇总 #
23859次浏览 308人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
186990次浏览 1122人参与
# 牛客AI文生图 #
21408次浏览 238人参与
# 不考虑薪资和职业,你最想做什么工作呢? #
152293次浏览 887人参与
# 研究所笔面经互助 #
118873次浏览 577人参与
# 简历中的项目经历要怎么写? #
310079次浏览 4194人参与
# AI时代,哪些岗位最容易被淘汰 #
63432次浏览 804人参与
# 面试紧张时你会有什么表现? #
30490次浏览 188人参与
# 你今年的平均薪资是多少? #
213013次浏览 1039人参与
# 你怎么看待AI面试 #
179875次浏览 1235人参与
# 高学历就一定能找到好工作吗? #
64313次浏览 620人参与
# 你最满意的offer薪资是哪家公司? #
76438次浏览 374人参与
# 我的求职精神状态 #
447988次浏览 3128人参与
# 正在春招的你,也参与了去年秋招吗? #
363256次浏览 2637人参与
# 腾讯音乐求职进展汇总 #
160585次浏览 1111人参与
# 校招笔试 #
470477次浏览 2964人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务