【单调队列】HDU_3706_Second My Problem First
来源:互联网 发布:手机淘宝客采集软件 编辑:程序博客网 时间:2024/05/18 03:21
Second My Problem First
Time Limit: 12000/4000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1931 Accepted Submission(s): 734
Problem Description
Give you three integers n, A and B.
Then we define Si = Ai mod B and Ti = Min{ Sk | i-A <= k <= i, k >= 1}
Your task is to calculate the product of Ti (1 <= i <= n) mod B.
Then we define Si = Ai mod B and Ti = Min{ Sk | i-A <= k <= i, k >= 1}
Your task is to calculate the product of Ti (1 <= i <= n) mod B.
Input
Each line will contain three integers n(1 <= n <= 107),A and B(1 <= A, B <= 231-1).
Process to end of file.
Process to end of file.
Output
For each case, output the answer in a single line.
Sample Input
1 2 32 3 43 4 54 5 65 6 7
Sample Output
23456
Author
WhereIsHeroFrom@HDU
Source
HDOJ 5th Anniversary Contest
Recommend
lcy
#include <cstdio>#include <cstring>#include <cmath>#include <algorithm>using namespace std;typedef long long LL;const int maxn=1e6+1;LL s[maxn],q[maxn],b;int main(){ LL n, a; while(~scanf("%lld%lld%lld",&n,&a,&b)){ LL front=0,rear=0; LL ans=1,x=1; for(LL i=1;i<=n;i++){ LL l=max(1LL,i-a); x=x*a%b; while(front<rear&&x<s[rear-1]) rear--; s[rear]=x; q[rear++]=i; while(front<rear&&l>q[front]) front++; ans=ans*s[front]%b; } printf("%lld\n",ans); } return 0;}
阅读全文
0 0
- 【单调队列】HDU_3706_Second My Problem First
- HDU3706Second My Problem First(单调队列)
- hdu3706 Second My Problem First 滑动窗口最小值 单调队列
- 单调队列(基础题) HDU3706 Second My Problem First
- HDU 3706 Second My Problem First 单调队列简单题
- HDU 3706 Second My Problem First 【单调队列】
- hdu 3706 Second My Problem First(单调队列)
- hdu 3706 Second My Problem First(单调队列)
- 单调队列1001 HDU 3706 Second My Problem First 单调队列入门题
- hdu3706 Second My Problem First
- HDU3706-Second My Problem First
- Second My Problem First HDU
- FZU problem 1896 单调队列
- Sticks Problem (单调队列)
- Sticks Problem--(单调队列)
- hdu 3706 Second My Problem First
- HDU 3706 Second My Problem First
- HDU - 3706 Second My Problem First
- 最大流 https://comzyh.com/blog/archives/568/
- 转:MySQL大小写问题
- Fortran中function,subroutine, interface和module的简单使用
- ubuntu14.04系统开发环境搭建
- 异常
- 【单调队列】HDU_3706_Second My Problem First
- Method Area(Non-Heap)
- 大暑假集训
- 1.3 C# 循环语句
- HDU
- 设置spinner选项选择后变成灰色
- Git的一些简单操作
- Lightoj1021Painful Bases (状压DP)
- [git]Git的使用流程(三)