#1223 : 不等式
时间限制:10000ms
单点时限:1000ms
内存限制:256MB
描述
给定n个关于X的不等式,问最多有多少个成立。
每个不等式为如下的形式之一:
X < C
X <= C
X = C
X > C
X >= C
输入
第一行一个整数n。
以下n行,每行一个不等式。
数据范围:
1<=N<=50,0<=C<=1000
输出
一行一个整数,表示最多可以同时成立的不等式个数。
- 样例输入
-
4 X = 1 X = 2 X = 3 X > 0
- 样例输出
-
2
1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 #include<algorithm> 5 #include<string> 6 using namespace std; 7 typedef long long LL; 8 #define MAXN 55 9 string s,op[MAXN]; 10 int n,num[MAXN]; 11 int main() 12 { 13 while(cin >> n) 14 { 15 for(int i = 0;i < n;i++) 16 { 17 cin >> s >> op[i] >> num[i]; 18 num[i] <<= 1; 19 } 20 int maxn = 1; 21 for(int x = -2;x <= 2003;x++) 22 { 23 int tem = 0; 24 for(int k = 0;k < n;k++) 25 { 26 if(op[k] == "=" && x == num[k])tem++; 27 else if(op[k] == "<=" && x <= num[k])tem++; 28 else if(op[k] == ">=" && x >= num[k])tem++; 29 else if(op[k] == "<" && x < num[k])tem++; 30 else if(op[k] == ">" && x > num[k])tem++; 31 } 32 maxn = max(maxn,tem); 33 } 34 cout << maxn << endl; 35 } 36 return 0; 37 }