返回列表 發帖

d478: 共同的數 - 簡易版

內容 : 正體->简体


因為學長覺得d136太可怕,所以出一題簡單版的XD

小潘跟小花都有很多個正整數,自己的數不會有重覆出現的,而且都是遞增排列。

現在她們想要知道,兩個人的數有幾個重覆的呢?

輸入說明 :


第一行有兩個數字n,m。 (1<=n<=100,1<=m<=10000)

接著共有n筆測資,每筆測資共有兩行,分別代表兩個人擁有的數,每行共有m個數。

所有數字都不大於231-1。

輸出說明 :


每筆測資請輸出一個數字,

代表兩個人的數有幾個重覆的。

範例輸入 :

若題目沒有特別說明,則應該以多測資的方式讀取,若不知如何讀取請參考 a001 的範例程式。2 6
1 5 6 8 9 13
3 4 5 7 8 11
4 6 7 14 16 23
6 9 12 13 16 23
範例輸出 :

2
3提示 :


如果這題AC了,可以去寫這題的進階版d136。

=========================================

http://zerojudge.tw/ShowProblem?problemid=d478

=========================================

#include <iostream> //引入函數庫
#include <cstdlib>
using namespace std;
int main(void){

    unsigned i,n,j,N,c,k;
    cin >> n >> N;
   
     for(i=0;i<n;i++)
     {
      unsigned long s[200000]={0};
          c=0;
          for(j=0;j<N;j++)
          {

          }
          for(j=0;j<N;j++)
          {
     
          }
      
      }

    system("pause");
    return 0;
}

TOP

  1. #include <stdio.h>
  2. /*#include <iostream> //引入函數庫
  3. #include <cstdlib>
  4. using namespace std; */
  5. int main(void){

  6.     unsigned i,n,j,N,c,k;
  7.     /*cin >> n >> N;*/
  8.     scanf("%u %u",&n,&N);
  9.      for(i=0;i<n;i++)
  10.      {
  11.       unsigned long s[200000]={0};
  12.           c=0;
  13.           for(j=0;j<N;j++)
  14.           {
  15.               /*cin >> k;*/
  16.               scanf("%u",&k);
  17.               s[k]=1;
  18.           }
  19.           for(j=0;j<N;j++)
  20.           {
  21.                    /*cin >> k;*/
  22.                    scanf("%u",&k);
  23.               if(s[k] == 1){

  24.                       c++;
  25.               }
  26.           }
  27.       /*cout << c << endl;*/
  28.       printf("%u\n",c);
  29.       }

  30.     /*system("pause");*/
  31.     return 0;
  32.     }
複製代碼

TOP

返回列表