poj1029为什么迟迟过不去,网上的给的几组易错的测试用例都过了啊
#include <iostream>
#include <stdlib.h>
using namespace std;
int flag[1005];
int main()
{
int n,k;
cin>>n>>k;
int i,j,p;
int left[505];
int right[505];
char c[3];
for(i=0;i<k;i++)
{
cin>>p;
for(j=0;j<p;j++)
{
cin>>left[j];
}
for(j=0;j<p;j++)
{
cin>>right[j];
}
cin>>c;
if(c[0]=='=')
{
for(j=0;j<p;j++)
{
flag[left[j]]=100;
}
for(j=0;j<p;j++)
{
flag[right[j]]=100;
}
}
if(c[0]=='>')
{
for(j=0;j<p;j++)
{
if(flag[left[j]]!=100)
{
flag[left[j]]++;
}
}
for(j=0;j<p;j++)
{
if(flag[right[j]]!=100)
{
flag[right[j]]--;
}
}
}
if(c[0]=='<')
{
for(j=0;j<p;j++)
{
if(flag[left[j]]!=100)
{
flag[left[j]]--;
}
}
for(j=0;j<p;j++)
{
if(flag[right[j]]!=100)
{
flag[right[j]]++;
}
}
}
}
int max=-1;
int ans;
int mount=1;
/*for(i=1;i<=n;i++)
{
cout<<flag[i]<<endl;
}*/
for(i=1;i<=n;i++)
{
if(flag[i]!=100 && abs(flag[i])>=max)
{
if(abs(flag[i])>max)
{
max=abs(flag[i]);
ans=i;
mount=1;
}
else if(abs(flag[i])==max)
{
mount++;
}
}
}
if(mount==1) cout<<ans<<endl;
else cout<<0<<endl;
//cout<<ans<<endl;
return 0;
}
还请大神们多多指教
[解决办法]
我说100够用么。比如这个数据,用101个coin,第一个大于其他任何一个。