Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

帮我看看吧,实在看不出来了,大哥们给组数据吧,谢谢了

Posted by sunxingwu at 2010-06-11 18:15:26 on Problem 3660
#include <cstdlib>
#include <iostream>
#include <memory.h>
#include <stdio.h>
using namespace std;
int d[1001][1001],rd[1001],cd[1001];
bool p1[1001];
bool p2[1001];
bool rank[1001];
int main(int argc, char *argv[])
{int n,m;
 int i,j,k,a,b,h;
 int count,total;
 while(scanf("%d%d",&n,&m)!=EOF){
    total=0;
    memset(rd,0,sizeof(rd));
    memset(cd,0,sizeof(cd));
    memset(d,0,sizeof(d));
    memset(p1,0,sizeof(p1));
    memset(p2,0,sizeof(p2));
    memset(rank,0,sizeof(rank));
    while(m--){
       scanf("%d%d",&a,&b);
       if(d[a][b]==0){
           d[a][b]=1;
           rd[b]++;
           cd[a]++;
           }
       }   
    for(k=1;k<=n;k++){
       count=0;
       for(i=1;i<=n;i++){
            if(rd[i]==0&&!p1[i]){
               p1[i]=1;
               count++;
               h=i;
               }
            }
       if(count==0)
          break;
       else if(count==1){
          for(j=1;j<=n;j++)
             if(d[h][j]&&!p1[j])
                rd[j]--;
          if(rank[h]==0)
             total++;
          rank[h]=1;
          }
       else {
          break;
          }
       }
    //printf("%d\n",total);
    for(k=1;k<=n;k++){
       count=0;
       for(i=1;i<=n;i++){
            if(cd[i]==0&&!p2[i]){
               count++;
               p2[i]=1;
               h=i;
               }
            }
       if(count==0)
          break;
       else if(count==1){
          for(j=1;j<=n;j++)
             if(d[j][h]&&!p2[j])
                cd[j]--;
          if(rank[h]==0)
             total++;
          rank[h]=1;
          }
       else {
          break;
          }
       }
    printf("%d\n",total);
    }
    //system("PAUSE");
    return EXIT_SUCCESS;
}

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator