HDU 5187 zhx's contest 快速幂,快速加
2024-10-20 03:48:15
题目链接:
hdu: http://acm.hdu.edu.cn/showproblem.php?pid=5187
bc(中文): http://bestcoder.hdu.edu.cn/contests/contest_chineseproblem.php?cid=571&pid=1002
题解:
求(2^n-2)%p,题目看错,一天都没什么思路,冷静一下。。
代码:
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
typedef long long LL; LL _n, p;
//快速加 -> x*n
LL pow_add(LL x,LL n) {
LL ret = , base = x;
while (n) {
if (n & ) {
ret = (ret + base) % p;
}
base = (base + base) % p;
n /= ;
}
return ret;
}
//快速幂 -> x^n
LL pow_mod(LL x,LL n) {
LL ret = , base = x;
while (n) {
if (n & ) {
ret = pow_add(ret, base);
}
base = pow_add(base, base);
n /= ;
}
return ret;
} int main() {
while (scanf("%lld%lld", &_n, &p) == && _n) {
LL ans = pow_mod(,_n);
ans = (ans + p - ) % p;
printf("%lld\n", ans);
}
return ;
}
最新文章
- 开刷LeetCode
- GoF--外观设计模式
- XAF学习笔记之-多表头设计
- JS 实现可停顿的垂直滚动
- ABAP认识
- iOS - UIGestureRecognizer
- 两篇很牛的vim使用技巧
- SQL 2005 日志损坏的恢复方法
- Linux上open-iscsi 的安装,配置和使用
- Windows8.1 与Ubuntu14.04双系统
- RocketMQ集群部署配置
- C 小白的 thrift 环境搭建
- spring相关面试题
- Laravel使用Form(转载)
- 【托业】【新托业TOEIC新题型真题】学习笔记12-题库八-P7
- 如何取消idea中的本地源码关联
- [Windows Azure] How to Create and Configure SQL Database
- Java之线程池和Lambda表达式
- SQL Server中的database checkpoint
- sparkSQL1.1入门之四:深入了解sparkSQL执行计划
热门文章
- ARM设备树
- 解决Stm32出现error: #20: identifier ";GPIO_InitTypeDef"; is undefined异常
- Go语言中其他数据与字符串类型的转换
- python学习之路-基本数据类型1 变量的概念、数字、字符串
- leetcode记录-回文数
- # 2017-2018-1 20155337《信息安全系统设计基础》第5周学习总结+mybash
- 20155337 2016-2017-2 《Java程序设计》第三周学习总结
- 3809: Gty的二逼妹子序列
- 十、Django之Admin
- Git生成SSH密钥