けんちょんの競プロ精進記録

競プロの精進記録や小ネタを書いていきます

算数と数学:植木算

AtCoder ABC 264 A - "atcoder".substr() (8Q, 灰色, 100 点)

文字列の部分文字列を取得する関数 substr() (C++) を用いるか、for 文で書こう。 問題へのリンク 問題概要 文字列 "atcoder" について、 文字目から 文字目までを出力せよ。 制約 解法 (1):関数 substr() を使う。 文字列 S に対して、 S.substr(i, l) は…

AtCoder ABC 227 A - Last Card (7Q, 灰色, 100 点)

これは難しいですね。何も考えずに for 文で求めるのが比較的楽でしょうか。 問題へのリンク 問題概要 と番号のついた 人に、 枚のカードを配っていく。 人 から始めて、人 の順に 1 枚ずつカードを配るとき、最後のカードは誰に配られるでしょうか? 解法 1…

AtCoder ABC 107 A - Train (8Q, 灰色, 100 点)

これまた重要な典型問題! 問題へのリンク 問題概要 両編成の列車の 両目は後ろから何両目か? 解法 前から 両目は、後ろから 両目 前から 両目は、後ろから 両目 ... 前から 両目は、後ろから 両目 というようになっていて、気づくのは「前から何両目か」と…

AtCoder ABC 069 A - K-City (9Q, 灰色, 100 点)

植木算する! 問題へのリンク 問題概要 東西方向に 本、南北方向に 本の道がある。 道路に囲まれた区画の個数を求めよ。 解法 たとえば、 のときは下図のようになる (入力例 1 より)。 のとき、横方向には 行ある のとき、縦方向には 列ある これらはそれぞ…