Entries

スポンサーサイト (この記事を編集する[管理者用])

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://rsujskf.blog32.fc2.com/tb.php/2321-ca4dcbbd
この記事にトラックバックする(FC2ブログユーザー)

ARC 007 B - 迷子のCDケース (この記事を編集する[管理者用])

Source

AtCoder Regular Contest #007
問題文

問題概要

N+1枚のCDがあり,0からNまで番号がついている.
CD 0はCDプレイヤーの中に入っており,その他はCD iはケースiに入っている.
M枚のCDを順番に聞く.
その際,CDプレイヤーの中に入っているCDを聞くなら何もしない.
そうでなければ,CDプレイヤーの中のCDを,聞きたいCDが入っているケースに入れ,聞きたいCDをCDプレイヤーの中に入れる.
最終的に,それぞれのケースに入っているCDの番号を出力する問題.
N, Mは100以下.

解法

愚直にシミュレーションする.

Cによるスパゲッティなソースコード
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
#define REP(i,a,b) for(i=a;i<b;i++)
#define rep(i,n) REP(i,0,n)

int main(){
  int i,j,k,l;
  int N, M;
  int res[200], now = 0;

  scanf("%d%d",&N,&M);
  rep(i,N) res[i] = i+1;

  while(M--){
    scanf("%d",&k);
    rep(i,N) if(res[i]==k){
      res[i] = now;
      now = k;
      break;
    }
  }

  rep(i,N) printf("%d\n",res[i]);

  return 0;
}

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://rsujskf.blog32.fc2.com/tb.php/2321-ca4dcbbd
この記事にトラックバックする(FC2ブログユーザー)

Appendix

Recent Articles

ブログ内検索

Ads


(プライバシーポリシー)
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。