24h購物| | PChome| 登入
2009-06-21 11:23:02| 人氣555| 回應1 | 上一篇 | 下一篇

共同的數

推薦 0 收藏 0 轉貼0 訂閱站台

由於龐大的輸入,造成連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;     
}

台長: 來源不明
人氣(555) | 回應(1)| 推薦 (0)| 收藏 (0)| 轉寄
全站分類: 數位資訊(科技、網路、通訊、家電) | 個人分類: ZeroJudge 基礎+原創題庫 |
此分類下一篇:Put a banana in your ear!
此分類上一篇:電腦-窮人的

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

我的程式碼也是一直處於na(score:99)的窘境= =
2009-11-15 02:09:50
版主回應
目前還在測試 之前可以AC的說...
2009-11-15 13:12:48
是 (若未登入"個人新聞台帳號"則看不到回覆唷!)
* 請輸入識別碼:
請輸入圖片中算式的結果(可能為0) 
(有*為必填)
TOP
詳全文