読者です 読者をやめる 読者になる 読者になる

mizkiの甘め日記。

情弱という言葉も知らなかった情弱な女の子ががんばってプログラミングします!

AOJを解くときのTips

プログラミング ICT委員会
ICT内のSlackで一日一問AOJの問題を解きましょうという #1day1problemチャンネルが立ち上がりました!
チャンネルに入っていないICT委員会員はテキストボックスに /join [#1day1problem]  と入力してチャンネルに入りましょう(あってる?
 
後輩向けにAOJの問題を解くときに知っておきたいことをまとめます
ほとんどC言語での例です。
 
①整数型は"int"  浮動小数点型は"double"をつかう
競技プログラミングでは、浮動小数点型は精度の高い"double"を使った方がいいです
 
②出力の最後は改行する
なぜかACがでない場合は改行をしていないからかもしれない
 
③配列の初期化は array[256] = {0}  を使う
 
④変数名は問題に合わせる
[aとbが入力されます]と文章にあれば、変数名はaとbにする
 
⑤変数名は英語を使う
× int suuji;
○ int num;
ローマ字がダメな理由は「グローバルに活躍するエンジニア()」を目指すため・・・?
グローバルに活躍するエンジニア()は英語を使います。
 
⑥入力の終わりまで処理する文を使えるようになる
while (scanf("%d", &n) != EOF){
// ここに処理を記述
}
 
⑦while文とfor文の使い分け
for → ループ回数が決まっているとき
while → 決まっていないとき
 
⑧大きい領域を必要とするときには "static"をつけるか、グローバル変数にして領域を静的に確保する
 
⑨条件式は "1<=n && n <= 10" みたいに書くと数学っぽくなってわかりやすい
 
⑩フラグの値は0と1だけにする
0と1以外をいれると"フラグ"ではなくなる
 
1day1problemで出たコードレビュー・アドバイスを中心にまとめています
他にあれば教えてほしいです