Educational Codeforces Round 85——A. Level Statistics题解

题目链接:http://codeforces.com/contest/1334/problem/A
Educational Codeforces Round 85——A. Level Statistics题解_第1张图片Educational Codeforces Round 85——A. Level Statistics题解_第2张图片Educational Codeforces Round 85——A. Level Statistics题解_第3张图片

可以理解为,同一时刻有两个指标,一个是尝试过的题目,一个是通过的题目。底下的提示写的很明显了,有这样几种不可能的情况:
(1)同一时刻下,通过的题目数不可能大于尝试过的题目数,即c(i)<= p(i)
(2)相较于上一时刻,通过的题目数和尝试过的题目数都不会减少,即c(i) >= c(i - 1), p(i) >= p(i - 1)
(3)相较于上一时刻,新通过的题目数不会大于新尝试过的题目数,即c(i) - c(i - 1) <= p(i) - p(i - 1)

代码如下:

#include 
using namespace std;


int main() {
    int t;
    cin >> t;
    while(t--) {
    	bool res = true;
    	int n;
    	cin >> n;
    	int a[105], b[105];
    	cin >> a[0] >> b[0];
    	if(b[0] > a[0]) {
    		res = false;
		}
    	for(int i = 1; i < n; i++) {
    		cin >> a[i] >> b[i];
    		if(a[i] < a[i - 1] || b[i] < b[i - 1] || b[i] > a[i] || b[i] - b[i - 1] > a[i] - a[i - 1]) {
    			res = false;
			}
		}
		if(res) {
			cout << "YES" << endl;
		} else {
			cout << "NO" << endl;
		}
	}
}

你可能感兴趣的:(CF)