正题
大意
给出一些询问和答案,询问内容包括:
1. 是否大于一个数
2. 是否小于一个数
3. 是否大于等于一个数
4. 是否小于等于一个数
这是一个-10000到10000的数
求这个数的最小值
代码
#include<cstdio>
#include<iostream>
using namespace std;
int n,x,y,num;
char answer,ques[2];
int main()
{scanf("%d",&n);x=-10000;y=10000;for (int i=1;i<=n;i++){scanf("%s %d %c",ques,&num,&answer);if (ques[1]=='='){if (ques[0]=='<' && answer=='Y') y=min(y,num);if (ques[0]=='>' && answer=='Y') x=max(x,num);if (ques[0]=='>' && answer=='N') y=min(y,num-1);if (ques[0]=='<' && answer=='N') x=max(x,num+1);}else{if (ques[0]=='<' && answer=='Y') y=min(y,num-1);if (ques[0]=='>' && answer=='Y') x=max(x,num+1);if (ques[0]=='>' && answer=='N') y=min(y,num);if (ques[0]=='<' && answer=='N') x=max(x,num);}}if (y<x) printf("Impossible");else printf("%d",x);
}