~~
~~
~~
#include<cstdio>
#include<iostream>
#include<string>
using namespace std;
int n,mi=-100000000,ma=100000000,g,b;
int main()
{scanf("%d",&n); for (int i=1;i<=n;i++){string s,ss; cin>>s;if (s==">") g=1; if (s=="<") g=2; if (s==">=") g=3; if (s=="<=") g=4; scanf("%d",&b); cin>>ss; if (ss=="N") //反过来,为了更好处理{if (g==1) g=4; else if (g==2) g=3; else if (g==3) g=2; else if (g==4) g=1; }if (g==1) g=3,b++;//a>b等于a>=b+1; if (g==2) g=4,b--;//等同于上if (g==3) mi=max(mi,b); if (g==4) ma=min(ma,b);}//mi和ma分别为左右边界if (mi>ma) printf("Impossible"); else printf("%d",mi); //如果左边界比右边界大,则无解,否则输出mi(最小解)
}
本文发布于:2024-01-29 18:17:23,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170652344917357.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |