HDU5875 Function
2024-08-28 08:39:14
**题意:**给定序列,有m个区间的询问,求每个询问a[l]%a[l+1]...%a[r]后的值。(N
/** @Date : 2016-11-19-16.07
* @Author : Lweleth (SoungEarlf@gmail.com)
* @Link : https://github.com/
* @Version :
*/
#include <stdio.h>
#include <iostream>
#include <string.h>
#include <algorithm>
#include <utility>
#include <vector>
#include <map>
#include <set>
#include <string>
#include <stack>
#include <queue>
//#include<bits/stdc++.h>
#define LL long long
#define MMF(x) memset((x),0,sizeof(x))
#define MMI(x) memset((x), INF, sizeof(x))
using namespace std;
const int INF = 0x3f3f3f3f;
const int N = 1e5+2000;
int a[N];
int np[N];
int main()
{
int T;
int n, q;
while(~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++)
{
np[i] = -1;
for(int j = i + 1; j <= n; j++)
{
if(a[j] <= a[i])//
{
np[i] = j;
break;
}
}
}
scanf("%d", &q);
int l, r;
while(q--)
{
scanf("%d%d", &l, &r);
int ans = a[l];
for(int i = np[l]; i <= r; i = np[i])
{
if(i == -1 || ans == 0)
break;
ans %= a[i];
}
printf("%d\n", ans);
}
}
}
return 0;
}
最新文章
- ORACLE数据库的导入及导出
- Liferay 6.2 改造系列之十七:当Portlet无权限时,不显示错误信息
- BZOJ 3170 &; 切比雪夫距离
- A daemon process class in python
- 【LeetCode OJ】Evaluate Reverse Polish Notation
- css3标签
- java学习一目了然&mdash;&mdash;File类文件处理
- poj1504--求两个数的反转数的和的反转数
- 读取数据表中第m条到第n条的数据,SQL语句怎么写?
- Mercurial简介
- android中怎么把自己须要的app启动图标集中到一个弹出框中
- [POI2007]ZAP-Queries
- Springboot集成Thymeleaf
- WdatePicker 日期控件- 功能及示例
- Spring核心——设计模式与IoC
- python - class类(归一化设计)
- Linux->;Windows主机目录和文件名中文乱码恢复
- MapStruct
- day 18 类,对象
- iOS.CocoaPods.0
热门文章
- C++课堂作业2016.05.04
- 《剑指offer》---输出链表倒数第k个结点
- Qt窗口及控件-窗口Close()自动释放
- PAT 甲级 1012 The Best Rank
- HUAS 1476 不等数列(DP)
- Python字符串的简单操作
- Codeforces Round #517 Div. 1翻车记
- linux文件服务器:samba服务器
- POJ 3261 Milk Patterns (后缀数组,求可重叠的k次最长重复子串)
- LOJ6354 &; 洛谷4366:[Code+#4]最短路——题解