把我做懵逼了
#include<bits/stdc++.h>
using namespace std;
int n;int ad=-1e7,bd=1e7;
int ab=-1e7,bb=1e7;
string w;string c;
int gn(int s)
{
int ans=0;
while(s<c.size())
{
ans=ans*10+c[s++]-'0';
}
//cout<<ans<<endl;
return ans;
}
int x;int f[3],d[3];int g[3];
int main()
{
cin>>n;
cin>>w;
getline(cin,c);
for(int i=1;i<=n;i++)
{
getline(cin,c);
if(c[1]=='>'){//>
if(c[2]=='='){//>=
if(c[3]=='-')x=gn(4)*(-1),ad=max(ad,x);
else x=gn(3),ad=max(ad,x);
}else{//>
if(c[2]=='-')x=gn(3)*(-1),ab=max(ab,x);
else x=gn(2),ab=max(ab,x);
}
g[1]=1;
}else{//<
if(c[2]=='='){
if(c[3]=='-')x=gn(4)*(-1),bd=min(bd,x);
else x=gn(3),bd=min(bd,x);
}else{
if(c[2]=='-')x=gn(3)*(-1),bb=min(bb,x);
else x=gn(2),bb=min(bb,x);
}
g[2]=1;
}
}
//cout<<ab<<" "<<ad<<" "<<bd<<" "<<bb<<endl;
if(ab>=ad)f[1]=ab,d[1]=0;
else f[1]=ad,d[1]=1;
if(bb<=bd)f[2]=bb,d[2]=0;
else f[2]=bd,d[2]=1;
//cout<<f[1]<<" "<<d[1]<<" "<<f[2]<<" "<<d[2]<<endl;
if(f[1]>f[2])
{
cout<<"No Answer!"<<endl;
return 0;
}
if(f[1]==f[2]&&(!d[1]||!d[2]))
{
cout<<"No Answer!"<<endl;
return 0;
}else if(f[1]==f[2])
{
cout<<w<<"="<<f[1]<<endl;return 0;
}
/*if(ab==-1e7&&ad==-1e7)g[1]=0;
else g[1]=1;
if(bb==1e7&&bd==1e7)g[2]=0;
else g[2]=1;*/
if(g[1]&&g[2]){
if(d[1]&&d[2])cout<<f[1]<<"<="<<w<<"<="<<f[2]<<endl;
if(d[1]&&!d[2])cout<<f[1]<<"<="<<w<<"<"<<f[2]<<endl;
if(!d[1]&&d[2])cout<<f[1]<<"<"<<w<<"<="<<f[2]<<endl;
if(!d[1]&&!d[2])cout<<f[1]<<"<"<<w<<"<"<<f[2]<<endl;
}else{
if(g[1])
{
if(d[1])cout<<w<<">="<<f[1];
else cout<<w<<">"<<f[1]<<endl;
}
if(g[2])
{
if(d[2])cout<<w<<"<="<<f[2];
else cout<<w<<"<"<<f[2]<<endl;
}
}
return 0;
}