HDU 5666 Segment (大数乘法取模)
来源:互联网 发布:java zip压缩并加密 编辑:程序博客网 时间:2024/06/05 12:05
Segment
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1765 Accepted Submission(s): 651
Problem Description
Input
Output
Sample Input
12 107
Sample Output
0
Source
BestCoder Round #80
Recommend
wange2014 | We have carefully selected several similar problems for you: 6018 6017 6016 6015 6014
别人说是利用二进制,感觉并不是,其实就是相当于把b分解成n个2相乘,这样每次a*2取模,如果b为奇数,最后再加上一个b,.这样就OK了。
#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;__int64 p,q;void solve(__int64 a, __int64 b){__int64 s=0, base=a;while(b){if(b&1){s+=base;s%=p;b--;}else{base*=2;base%=p;b=(b>>1);}}printf("%I64d\n", s);}int main(){int t;scanf("%d", &t);while(t--){scanf("%I64d%I64d", &q, &p);if(q==2){printf("0\n");}else{__int64 x=(q-1)/2%p;__int64 y=(q-2)%p;solve(x, y);}}return 0;}
0 0
- HDU 5666 Segment (大数乘法取模)
- hdoj 5666 Segment (大数取模)(俄罗斯乘法)
- hdu 5666 Segment(大整数乘法)
- 【HDU 5666 Segment】+ 俄罗斯乘法
- HDU 5666 Segment(大数+gcd)
- HDU 5666 Segment(快速乘法/快速幂改)
- HDU - 5666 Segment (大数位运算)好题
- 大数乘法,并对结果取模
- hdu(1212)大数取模
- HDU--1212大数取模
- 大数取模 HDU 5832
- 大数取模(HDU-1212)
- [HDU-5241] 大数乘法
- Hdu 5666 Segment【欧拉函数+技巧乘法】
- HDU 5666 Segment —— 快速加 俄罗斯农民乘法
- HDU 1212 Big Number(水题)大数取模
- HDU-#1212 Big Number(大数取模)
- HDU 1212 Big Number(简单的大数取模)
- 毕业论文参考文献 Master's thesis references
- 算子优化 filter + coalesce
- BZOJ 1061 [noi2008] 志愿者招募
- 正则表达式进行注册验证
- VR系列——Oculus最佳实践:七、虚拟幻境头晕(下)
- HDU 5666 Segment (大数乘法取模)
- leetcode_326. Power of Three-判断是否3的次方
- 2016年生物3D打印八大重要成果
- JSON必知必会
- 初识JPA
- PAT-A1116
- 搭建网络挂载文件系统
- 大数据学习笔记之四十九 推荐算法的主要算法第二部分
- 二分一个数组,使二者之差尽可能小