【NOIP 模拟题】求和 (打表找规律+递推)
来源:互联网 发布:python加密 编辑:程序博客网 时间:2024/05/20 14:17
求和
【题目描述】求:
【输入文件】
第一行一个正整数N,表示共有N组测试数据;
接下来N行,每行两个正整数a和b。
【输出文件】 共N行,每行一个对应的答案。
【样例输入】
1
2 3
【样例输出】
9
【题解】【打表找规律+递推】
【因为需要模的数较小,又根据mod的运算规律,可以把所有大于10000的数先Mod再进行乘方和加法运算,这样大于10000的数也都变成小于等于10000的数了,就可以减少循环的长度。】
#include<cstdio>#include<cstring>#include<algorithm>#define ll long longusing namespace std;int const mod=10000;ll sum;int ans[110],n,a,b;inline void slove1(int n){ ll sum=(1+n)%mod; sum=sum*n; sum/=2; printf("%lld\n",sum%mod); return;}inline ll poww(int x,int p){ ll ans=1; while(p) { if(p&1) ans*=x,ans%=mod; x*=x; x%=mod; p>>=1; } return ans%mod;}int main(){ freopen("sum.in","r",stdin); freopen("sum.out","w",stdout); int i,j; scanf("%d",&n); while(n) { scanf("%d%d",&a,&b); if(b==1) {slove1(a%mod); n--; continue;} int m=a/mod,md=a%mod; if(!m||(m==1&&!md)) { sum=1; for(i=2;i<=a;++i) if(i==10||i==100||i==1000||i==10000) continue; else sum+=poww(i,b),sum%=mod; printf("%lld\n",sum); n--; continue; } sum=1*m; for(i=2;i<=9999;++i) if(i==10||i==100||i==1000) continue; else sum+=m*poww(i,b),sum%=mod; if(md) { sum++; for(i=2;i<=md;++i) if(i==10||i==100||i==1000) continue; else sum+=poww(i,b),sum%=mod; } printf("%lld\n",sum); n--; }}
0 0
- 【NOIP 模拟题】求和 (打表找规律+递推)
- 【NOIP 模拟题】中位数(规律+递推)
- 【NOIP 模拟题】[T2]one(递推)
- 【NOIP 模拟题】[T1](递推+乱搞)
- NOIP模拟题 [递推][DP][搜索]
- 【NOIP 模拟题】[T1]数列(找规律+欧几里得算法)
- GOJ 1455 数学(规律模拟递推)
- 【NOIP模拟题】【数学归纳法】【递推】【容斥原理】【等比数列求和】2016.11.15 第三题 小L的珍珠挂饰 题解
- NOIP模拟题[递推][并查集][DP]
- NOIP模拟题 [递推][优化][dp][线段树][离散]
- NOIP模拟题 [LIS][建图][递推][容斥]
- 递推(DP) noip 模拟 不等数列
- [noip模拟赛]求和(快速幂)
- NOIP模拟(11.07)T1 数列求和
- 【NOIP模拟赛】 思维+离线+递推 数列(好题)
- NOIP-贪心,递推,枚举,模拟
- 【codevs 5131】[NOIP普及组 2015 T3]求和(递推)
- [NOIP模拟][规律探究]弹球
- 欢迎使用CSDN-markdown编辑器
- 算法笔试题——N个正整数联接,组成最小的长整数
- 02_Python设计第一个游戏
- 利用python进行数据分析-时间序列3
- 初次使用
- 【NOIP 模拟题】求和 (打表找规律+递推)
- python解决ImportError: No module named google.protobuf
- s2sh整合开发的配置
- nim游戏求先手第一步走的方法
- caffe源码解析 — caffe.proto
- iOS Provisioning Profile(Certificate)与Code Signing详解
- 来来来来吃一发STL
- java虚拟机新生代l收集器
- 聊聊如何使用一套csb进行多语言匹配