标签:
题目链接:不等式
解析:直接枚举C的位置,然后判断所有C中所满足的最大个数。
注意C没有讲是整数,所以枚举要+0.5
实话说,我也不懂为什么枚举实数要这样枚举。。。
AC代码:
#include <cstdio> #include <iostream> #include <cstring> #include <string> using namespace std; struct Node{ string p; double v; }; Node a[51]; int main(){ // #ifdef sxk // freopen("in.txt", "r", stdin); // #endif // sxk int n; string X; while(scanf("%d", &n) == 1){ for(int i=0; i<n; i++){ cin>>X>>a[i].p>>a[i].v; a[i].v *= 2; //×2避免0.5的出现 } int ans = -123456789; for(int i=-1; i<2005; i++){ int res = 0; for(int j=0; j<n; j++){ if(a[j].p == "="){ if(a[j].v == i) res ++; } else if(a[j].p == ">"){ if(a[j].v < i) res ++; } else if(a[j].p == ">="){ if(a[j].v <= i) res ++; } else if(a[j].p == "<"){ if(a[j].v > i) res ++; } else if(a[j].p == "<="){ if(a[j].v >= i) res ++; } } if(ans < res) ans = res; } printf("%d\n", ans); } return 0; }
版权声明:本文为sxk原创文章,转载请附加本文链接^_^
标签:
原文地址:http://blog.csdn.net/u013446688/article/details/48135607