水题: 插入多个线段,统计被最多线段覆盖的点,被覆盖的次数。 大了得用线段树了,但是这个规模很小~~嘿嘿…… 详见代码: #include <iostream> #include <stdio.h> #include <algorithm> #include <cmath> #include <cstring> using namespace std; void MyScanf(int &num) { char a; while(a=getchar(),!isdigit(a)); num = a-'0'; while ((a = getchar())!=' ' && a!='/n') num = num*10 + a-'0'; } int a[2001]; void Input() { } void Init() { memset(a,0,sizeof(a)); } void Compute() { int i,j; int n; cin >> n; int x,y; for (i = 1;i <= n;i++) { cin >> x >> y; x = (x + 1) / 2; y = (y + 1) / 2; if (x > y) swap(x,y); for (j = x;j <= y;j++) a[j]++; } int result = 0; for (i = 1;i <= 200;i++) result = max(result,a[i]); cout << result * 10 << endl; } int main() { int t; cin >> t; while (t--) { Init(); Compute(); } return 0; }