HNU Knockout Racing 分类: ACM 2015-08-03 13:35 1人
来源:互联网 发布:php开发网站兼容问题 编辑:程序博客网 时间:2024/06/05 20:31
题目链接http://acm.hnu.cn/online/?action=problem&type=show&id=13342&courseid=0
Problem description
The races became more popular than ever at Pandora planet. But these races are quite unusual. There are n cars participating in a race on the long straight track. Each car moves with a speed of 1 meter per second. Track has coordinates in meters.
The car number i moves between two points on the track with coordinates ai and bi starting at the second 0 in the point ai. The car moves from ai to bi, then from bi to ai, then from ai to bi again, and so on. Handsome Mike wants to knock some cars out of the race using dynamite. Thus he has m questions. The question number j is: what is the number of cars in the coordinates between xj and yj inclusive after tj seconds from the start? Your task is to answer Mike’s questions.
Input
The first line of the input file contains two integers n and m (1 ≤ n,m ≤ 1000) — the number of cars in the race and the number of questions. Each of the following n lines contains a description of the car: two integers ai and bi(0 ≤ ai,bi≤ 10^9, ai ≠ bi) — the coordinates of the two points between which the car i moves. Each of the following m lines contains a description of the question: three integers xj, yj, and tj (0 ≤ xj≤ yj≤ 10^9, 0 ≤ tj≤ 10^9) — the coordinate range and the time for the question j.
Output
Write m lines to the output file. Each line must contain one integer — the answer to the corresponding question in order they are given in the input file.
Sample Input
5 5
0 1
0 2
2 3
3 5
4 5
0 5 0
0 1 2
0 2 1
2 5 2
2 5 3
Sample Output
5
1
2
4
3
Problem Source
NEERC 2014
水题= =直接上代码
#include<stdio.h>#include<string.h>#include<iostream>#include<algorithm>#define maxn 1000+100 using namespace std;struct node{ int x,y;}a[maxn];int main(){ int n,m; scanf("%d %d",&n,&m); for(int i=0;i<n;i++) { scanf("%d %d",&a[i].x,&a[i].y); } while(m--) { int xx,yy,t; scanf("%d %d %d",&xx,&yy,&t); int count=0; for(int i=0;i<n;i++) { int tx=0; if(t<(a[i].y-a[i].x)) { tx=a[i].x+t; } else { int u=t%(a[i].y-a[i].x); int v=t/(a[i].y-a[i].x); if(v&1) tx=a[i].y-u; else tx=a[i].x+u; } if(tx>=xx&&tx<=yy) { count++; } } printf("%d\n",count); } return 0;}
版权声明:本文为博主原创文章,未经博主允许不得转载。
- HNU Knockout Racing 分类: ACM 2015-08-03 13:35 1人
- HNU Knockout Racing
- acm hnu 10136 Palindromes
- acm HNU Dwarf Tower
- 2015 HNU warm up 03
- 背包问题------ 分类: ACM 2015-08-03 20:57 1人阅读 评论(0
- acm hnu Problem 10106 区间
- acm hnu 10049 IP Address
- acm hnu 10182 置换排列
- acm hnu 10039 Magician (easy)
- acm hnu 10072 Fibonacci Number
- Joke with permutation 分类: ACM 2015-08-03 14:09 1
- acm hnu 10038 进制转换
- acm hnu 134 Joseph's Puzzle
- acm hnu Problem 10067 Sorting by Swapping
- acm hnu 10189 Speed Limit (easy)
- hnu acm Problem 10016 Polar Explorer
- HNU ACM: Cheering up the Cows (kruscal)
- 1080 两个数的平方和 分类: 51nod 2015-07-20 22:20 11人阅读
- 二叉树的遍历 分类: 数据结构 2015-07-20 22:34 4人阅读 评论(0)
- Buildings 分类: ACM 多校 2015-07-23 22:09
- Delicious Apples(多校联合训练) 分类: ACM 多校 201
- Crazy Search(POJ1200) 分类: poj 2015-07-25 10:15 6
- HNU Knockout Racing 分类: ACM 2015-08-03 13:35 1人
- Joke with permutation 分类: ACM 2015-08-03 14:09 1
- Judging Troubles (multiset查找) 分类: ACM STL
- Cent Savings (DP) 分类: ACM dp 2015-08-0
- 背包问题------ 分类: ACM 2015-08-03 20:57 1人阅读 评论(0
- 最小生成树 克鲁斯卡尔(Kruskal)算法求最小生成树
- 优先队列实现哈弗曼最小权值
- 二维hash(Uva 12886)
- Concert Tour(Uvalive 6853)