2009-06-21 11:23:02來源不明

共同的數

由於龐大的輸入,造成連SCANF都太慢,只好優化輸入

/******************************************************/

/*感謝fei6409 提供程式碼*/
/*函式內為優化輸入的作法 一定要做一個步驟 將垃圾清除*/
#include<stdio.h>     
#include<stdlib.h>     
unsigned long long int temp1[1000000],temp2[1000000];
long long int input()
{
  char cha;
  unsigned long long int x=0;
  while(cha=getchar())
     if(cha!=' '&&cha!='\n') break;
  x=cha-48;
  while(cha=getchar())
    {
     if(cha==' '||cha=='\n') break;
      x=x*10+cha-48;
    }
    return x;
}
main()     
{     
 int n,m;     
 while(scanf("%d %d",&n,&m)==2)     
  {     
   int a,b,c;     
   for(a=0;a<n;a++)     
    {     
     for(b=0;b<m;b++) temp1[b]=input();     
     for(b=0;b<m;b++) temp2[b]=input();
     int x1=0,y1=0,time1=0;     
        while(x1<m&&y1<m)     
        {     
         if(temp1[x1]<temp2[y1]) x1++;     
         else if(temp1[x1]>temp2[y1]) y1++;     
         else {time1++;x1++;y1++;}     
        }      
      printf("%d\n",time1);     
    }     
  }     
 return 0;     
}

和風信使 2009-11-15 02:09:50

這個程式馬上傳又變成na了
怎麼會這樣勒@@

我的程式碼也是一直處於na(score:99)的窘境= =

版主回應
目前還在測試 之前可以AC的說... 2009-11-15 13:12:48