首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

poj1029为何迟迟过不去,网上的给的几组易错的测试用例都过了

2013-03-26 
poj1029为什么迟迟过不去,网上的给的几组易错的测试用例都过了啊#include iostream#include stdlib.hu

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,第一个大于其他任何一个。

热点排行