hdu5875思维题
来源:互联网 发布:python多进程和多线程 编辑:程序博客网 时间:2024/06/05 17:46
给你一个序列,给出询问l,r求a[l]%a[i+1]%a[i+2]….%a[r]的结果
由于取余比自己大的数没有意义,只要预处理一下,从比自己小于等于的地方开始取余就行
#include <iostream>#include <cstdio>using namespace std;const int maxn=100010;int a[maxn],b[maxn];int main(){ int t,n,m; scanf("%d",&t); while(t--) { scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d",&a[i]);; for(int i=1;i<=n;i++) { int tmp=n+1; for(int j=i+1;j<=n;j++) { if(a[i]>a[j]) { tmp=j; break; } } b[i]=tmp;//从tmp位置不大于a【i】 }// for(int i=1;i<=n;i++)// cout<<b[i]<<endl; int l,r; int ans; scanf("%d",&m); while(m--) { scanf("%d%d",&l,&r); ans=a[l]; for(int j=l+1;j<=r;) { ans%=a[j]; j=b[j]; } printf("%d\n",ans); } } return 0;}
0 0
- hdu5875(思维题)
- hdu5875思维题
- hdu5875 Function
- HDU5875-Function
- hdu5875 Function
- Function(HDU5875)
- hdu5875 Function(暴力)
- 【HDU5875】Function(RMQ)
- hdu5875 二分加st
- hdu5875 Function (预处理+单调性质)
- hdu5875 Function (离线处理)
- HDU5875-Function(RMQ + 二分)
- 思维题
- hdu5875 Function 模运算 + 单调栈
- HDU 5596 思维题(逆向思维)*
- 有意思的思维题
- HDU4357(数学思维题)
- Number Sequence(思维题)
- [NOIP 2014] 飞扬的小鸟:需要一点小优化的DP
- @maohoo Oracle 函数使用之Decode
- 最长回文串前缀
- 移动端touch事件 之 百度 touch.js 开发文档
- 进制转换变形题 poj 1331 Multiply
- hdu5875思维题
- HDU 5877 2016大连网络赛 Weak Pair(树状数组,线段树,动态开点,启发式合并,可持久化线段树)
- HDU 1421
- [Android开发]-图片压缩(根据屏幕大小进行比例压缩)
- * daemon not running.starting it now on port 5037 * 问题解决
- 事件委托的二级菜单编写
- Generic Makefile for C program
- 2015-2016 ACM-ICPC, NEERC, Northern Subregional Contest G:Graph (构造,拓扑)
- CMS 垃圾回收