競技プログラミング用 知識集積所
ABC398A - Doors in the Center
最終更新:
sport_programming
-
view
問題
必要知識
考え方
まず、文字列のベースを作る。
真ん中あたりの1文字または2文字を除けば全て'-'なので、とりあえず'-'ばっかりn文字の文字列を用意しておくと楽になりそうと考える。
真ん中あたりの1文字または2文字を除けば全て'-'なので、とりあえず'-'ばっかりn文字の文字列を用意しておくと楽になりそうと考える。
if (n%2==1) { 奇数の場合のコード } else { 偶数の場合のコード }
(慣れると、if(n%2)とだけ書くようになる)
文字数が0から始まることに注意すると、'='に変えるべき場所は、奇数の場合はn/2番目、偶数の場合はn/2-1番目とn/2番目ということなる。
つまり、奇数の場合は
つまり、奇数の場合は
result.at(n/2) = '=';
偶数の場合は
result.at(n/2-1) = '='; result.at(n/2) = '=';
を実行させる。
最後に、忘れずにcoutで出力しておしまい。