#33493: NA 用陣列爆炸了 徒法煉鋼的方式


liuc7721 (Shin)

學校 : 國立竹東高級中學
編號 : 179484
來源 : [39.9.70.164]
最後登入時間 :
2024-11-24 10:22:35
c296. APCS-2016-1029-3定時K彈 -- 2016年10月APCS | From: [42.73.250.128] | 發表日期 : 2023-01-09 23:44

這樣也NA... 求大神幫忙了

 

#include <iostream>
using namespace std;

int main() {
  int N,M,K;//N個人,第M個爆炸,爆炸K次
  int pivot = 0;//從0開始
  cin >> N >> M >> K;
  int A[N];
  for(int i=0; i<N; i++)
    A[i] = 0; //初始化

  while(K>0){
    //開始傳遞炸彈,第M個人爆炸
    for(int j=0; j<(M-1); j++){
      pivot++;
      if(pivot >= N)
        pivot -= N;
      if(A[pivot] == 1)
        j--;
    }
    A[pivot] = 1;

    
    pivot++; //淘汰者的下一個開始傳遞
    while(A[pivot]!=0){//若已爆炸,則再往下傳遞
      pivot++;
      if(pivot>=N)
        pivot-=N;
    }
    K--;
      
    if(K==0){
      cout << pivot+1; //幸運者
    }
  }
}

 
ZeroJudge Forum