如何运用同余定理求余数【hdoj 1212 Big Number【大数求余数】】
Big Number
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 5930 Accepted Submission(s): 4146
To make the problem easier, I promise that B will be smaller than 100000.
Is it too hard? No, I work it out in 10 minutes, and my program contains less than 25 lines.
/*例如10000对m求余:
* 10000%m
* ==(10%m*1000%m)%m
* ==(10%m*(10%m*100%m)%m)%m
* ==(10%m*(10%m*(10%m*10%m)%m)%m)%m
* 用代码表示就是:
* 假设10000是字符串长度是len
*/ /*
* 如123对m求余
* 123%m
* ==((12%m*10%m)%m+3%m)%m
* ==(((10%m+2%m)%m*10%m)%m+3%m)%m
* ==((((1%m*10%m)%m+2%m)%m*10%m)%m+3%m)%m
*/
gets(str);
int ans=0;
for(i=0;i<len;i++)
{
ans=ans*10+str[i];
ans=ans%m;
}
对幂求余数:
/*
* 对幂取模如对37的4次方取模
* (37*37*37*37)%m
* ==(37%m*(37*37*37)%m)%m
* ==(37%m*(37%m*(37*37)%m)%m)%m
* ==(37%m*(37%m*(37%m*37%m)%m)%m)%m
*/
//求n^m%1000
s=n;
for(i=1;i<m;i++)
{
s=s*n;
s=s%1000;
}
详细的模运算请参考:http://blog.csdn.net/chocolate_22/article/details/6458029
#include<stdio.h>
#include<string.h>
#define MAX 1100
int main()
{
int n,m,j,i,s,t;
char p[MAX];
while(scanf("%s",p)!=EOF)
{
scanf("%d",&n);
int l=strlen(p);
s=0;
for(i=0;i<l;i++)
{
s=s*10+p[i]-'0';
s=s%n;
}
printf("%d\n",s);
}
return 0;
}
如何运用同余定理求余数【hdoj 1212 Big Number【大数求余数】】的更多相关文章
- POJ 2635 The Embarrassed Cryptographer (千进制,素数筛,同余定理)
The Embarrassed Cryptographer Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 15767 A ...
- hdu 4704 同余定理+普通快速幂
此题往后推几步就可找到规律,从1开始,答案分别是1,2,4,8,16.... 这样就可以知道,题目的目的是求2^n%Mod的结果.....此时想,应该会想到快速幂...然后接着会发现,由于n的值过大, ...
- [ACM] POJ 2635 The Embarrassed Cryptographer (同余定理,素数打表)
The Embarrassed Cryptographer Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 11978 A ...
- POJ 1465 Multiple (BFS,同余定理)
id=1465">http://poj.org/problem?id=1465 Multiple Time Limit: 1000MS Memory Limit: 32768K T ...
- ACM选修HUST1058(市赛题) Lucky Sequence 同余定理
Description Edward 得到了一个长度为 N 的整数序列,他想找出这里面有多少个“幸运的”连续子序列.一个连续子序列被称为“幸运的”,当且仅当该子序列内的整数之和恰好是 K 的 ...
- 2016湖南省赛----A 2016 (同余定理)
2016湖南省赛----A 2016 (同余定理) Description 给出正整数 n 和 m,统计满足以下条件的正整数对 (a,b) 的数量: 1. 1≤a≤n,1≤b≤m; 2. a×b 是 ...
- HDU-1163Eddy's digital Roots,九余定理的另一种写法!
下午做了NYOJ-424Eddy's digital Roots后才正式接触了九余定理,不过这题可不是用的九余定理做的.网上的博客千篇一律,所以本篇就不发篇幅过多介绍九余定理了: 但还是要知道什么是九 ...
- HDU-2817,同余定理+快速幂取模,水过~
A sequence of numbers Time Limit: 2000/1 ...
- 十二届 - CSU 1803 :2016(同余定理)
题目地址:http://acm.csu.edu.cn/csuoj/problemset/problem?pid=1803 Knowledge Point: 同余定理:两个整数a.b,若它们除以整数m所 ...
随机推荐
- Chrome浏览器报错:Origin null is not allowed by Access-Control-Allow-Origin.
问题:Chrome浏览器报错:Origin null is not allowed by Access-Control-Allow-Origin. 原因:.js文件中使用load()方法,而Chrom ...
- html5异步上传图片显示上传文件进度条
<html> <head> </head> <body> <p> emo_album_id:<input type="tex ...
- 韩顺平_JAVA_视频教程_下载(打开迅雷,直接复制链接地址即可下载)
ed2k://|file|韩顺平.循序渐进学.java.从入门到精通.第0讲-开山篇.avi|37021064|f4fb2fb3db938a642146ccc8f0935fed|h=ao2k3ep7p ...
- 为你的TabBar添加Badge-感谢分享
实现过程 首先定义了三种Badge类型 typedef NS_ENUM(NSUInteger, CustomBadgeType){ kCustomBadgeStyleRedDot, //显示普通红点类 ...
- jquery - 通过点击切换文字内容
今天要写一个简单的显示/隐藏效果,本以为是挺简单的事儿,没想到还真因为基本功不扎实遇到了问题,这里跟大家分享一下. 百度了很多方法,精简能用的干货实在太少,最后还是通过去查jq的官方api才找到了解决 ...
- bzoj 3858: Number Transformation 暴力
3858: Number Transformation Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 82 Solved: 41[Submit][Sta ...
- 【技术贴】解决vss中提交pdf下载打开空白乱码
vss客户端需要安装一个Vss2005的补丁程序,而且之前上传的pdf文件重新删掉,再次上传进Vss中,再下载打卡就ok了. 补丁名称vs80-kb943847-x86-intl.exe 别人的csd ...
- Ansj分词双数组Trie树实现与arrays.dic词典格式
http://www.hankcs.com/nlp/ansj-word-pairs-array-tire-tree-achieved-with-arrays-dic-dictionary-format ...
- NetFlow网络流量监测技术的应用和设计(转载)
http://blog.chinaunix.net/uid-20466300-id-1672909.html http://www.cww.net.cn/news/html/2014/12/25/20 ...
- 因为中国队赢了,再撸一下DJANGO的官方文档吧
对比一下,CBVS和FBVS,哪个方便? from django.shortcuts import render from django.http import Http404 from django ...