Board logo

標題: c291: APCS 2017-0304-2小群體 [打印本頁]

作者: ray    時間: 2020-7-18 10:42     標題: c291: APCS 2017-0304-2小群體

https://zerojudge.tw/ShowProblem?problemid=c291
作者: 陳泓瑜    時間: 2020-7-18 11:30

  1. #include<iostream>
  2. #include<string>
  3. using namespace std;
  4. int main()
  5. {
  6.     int k,f,g=0,start;
  7.     cin>>k;
  8.     int a[k], b[k];
  9.     for(int i = 0; i < k; i++)
  10.     {
  11.        cin>>a[i];
  12.        b[i]=0;
  13.     }
  14.     for(int i = 0; i < k; i++)
  15.     {
  16.         if(b[i] == 0)
  17.         {
  18.             start = i;
  19.             f = a[i];
  20.             b[i]=1;
  21.             while(start != f)
  22.             {
  23.                 b[f]=1;
  24.                 f=a[f];
  25.             }
  26.             g++;
  27.         }
  28.     }
  29.     cout<<g;
  30.     return 0;
  31. }
複製代碼

作者: 李知易    時間: 2020-7-18 11:43

  1. #include <string>
  2. #include <iostream>

  3. using namespace std;

  4. int main()
  5. {
  6.     int n, start, frd;
  7.     cin>>n;
  8.     int a[n];
  9.     int b[n];
  10.     for(int i = 0; i < n; i++)
  11.     {
  12.         cin>>a[i];
  13.         b[i]=0;
  14.         
  15.     }
  16.     int g = 0;
  17.     for(int i = 0; i < n; i++)
  18.     {
  19.         if(b[i] == 0)
  20.         {
  21.             b[i] = 1;
  22.             start = i;
  23.             frd = a[i];
  24.             while(start != frd)
  25.             {
  26.                 b[frd] = 1;
  27.                 frd = a[frd];
  28.             }
  29.             g++;
  30.         }
  31.     }
  32.     cout<<g<<endl;
  33.     return 0;
  34. }
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/) Powered by Discuz! 7.2