Submit Search
Upload
abc031
•
1 like
•
9,296 views
A
AtCoder Inc.
Follow
AtCoder Beginner Contest #031https://abc031.contest.atcoder.jp の解説です。
Read less
Read more
Education
Report
Share
Report
Share
1 of 16
Download now
Download to read offline
Recommended
AtCoder Beginner Contest 034 解説
AtCoder Beginner Contest 034 解説
AtCoder Inc.
AtCoder Beginner Contest 004 解説
AtCoder Beginner Contest 004 解説
AtCoder Inc.
Abc009
Abc009
AtCoder Inc.
AtCoder Beginner Contest 024 解説
AtCoder Beginner Contest 024 解説
AtCoder Inc.
abc032
abc032
AtCoder Inc.
AtCoder Beginner Contest 017 解説
AtCoder Beginner Contest 017 解説
AtCoder Inc.
abc027
abc027
AtCoder Inc.
AtCoder Regular Contest 021 解説
AtCoder Regular Contest 021 解説
AtCoder Inc.
Recommended
AtCoder Beginner Contest 034 解説
AtCoder Beginner Contest 034 解説
AtCoder Inc.
AtCoder Beginner Contest 004 解説
AtCoder Beginner Contest 004 解説
AtCoder Inc.
Abc009
Abc009
AtCoder Inc.
AtCoder Beginner Contest 024 解説
AtCoder Beginner Contest 024 解説
AtCoder Inc.
abc032
abc032
AtCoder Inc.
AtCoder Beginner Contest 017 解説
AtCoder Beginner Contest 017 解説
AtCoder Inc.
abc027
abc027
AtCoder Inc.
AtCoder Regular Contest 021 解説
AtCoder Regular Contest 021 解説
AtCoder Inc.
AtCoder Beginner Contest 016 解説
AtCoder Beginner Contest 016 解説
AtCoder Inc.
AtCoder Regular Contest 042 解説
AtCoder Regular Contest 042 解説
AtCoder Inc.
AtCoder Beginner Contest 010 解説
AtCoder Beginner Contest 010 解説
AtCoder Inc.
AtCoder Beginner Contest 025 解説
AtCoder Beginner Contest 025 解説
AtCoder Inc.
AtCoder Regular Contest 043 解説
AtCoder Regular Contest 043 解説
AtCoder Inc.
AtCoder Beginner Contest 030 解説
AtCoder Beginner Contest 030 解説
AtCoder Inc.
AtCoder Beginner Contest 011 解説
AtCoder Beginner Contest 011 解説
AtCoder Inc.
AtCoder Beginner Contest 015 解説
AtCoder Beginner Contest 015 解説
AtCoder Inc.
AtCoder Beginner Contest 020 解説
AtCoder Beginner Contest 020 解説
AtCoder Inc.
AtCoder Beginner Contest 021 解説
AtCoder Beginner Contest 021 解説
AtCoder Inc.
AtCoder Beginner Contest 002 解説
AtCoder Beginner Contest 002 解説
AtCoder Inc.
AtCoder Beginner Contest 008 解説
AtCoder Beginner Contest 008 解説
AtCoder Inc.
AtCoder Beginner Contest 006 解説
AtCoder Beginner Contest 006 解説
AtCoder Inc.
AtCoder Beginner Contest 005 解説
AtCoder Beginner Contest 005 解説
AtCoder Inc.
AtCoder Regular Contest 026 解説
AtCoder Regular Contest 026 解説
AtCoder Inc.
AtCoder Regular Contest 022 解説
AtCoder Regular Contest 022 解説
AtCoder Inc.
AtCoder Regular Contest 049 解説
AtCoder Regular Contest 049 解説
AtCoder Inc.
AtCoder Beginner Contest 035 解説
AtCoder Beginner Contest 035 解説
AtCoder Inc.
AtCoder Beginner Contest 014 解説
AtCoder Beginner Contest 014 解説
AtCoder Inc.
AtCoder Regular Contest 046
AtCoder Regular Contest 046
AtCoder Inc.
基礎構文班 15回目 メソッド
基礎構文班 15回目 メソッド
XMLProJ2014
AtCoder Beginner Contest 026 解説
AtCoder Beginner Contest 026 解説
AtCoder Inc.
More Related Content
What's hot
AtCoder Beginner Contest 016 解説
AtCoder Beginner Contest 016 解説
AtCoder Inc.
AtCoder Regular Contest 042 解説
AtCoder Regular Contest 042 解説
AtCoder Inc.
AtCoder Beginner Contest 010 解説
AtCoder Beginner Contest 010 解説
AtCoder Inc.
AtCoder Beginner Contest 025 解説
AtCoder Beginner Contest 025 解説
AtCoder Inc.
AtCoder Regular Contest 043 解説
AtCoder Regular Contest 043 解説
AtCoder Inc.
AtCoder Beginner Contest 030 解説
AtCoder Beginner Contest 030 解説
AtCoder Inc.
AtCoder Beginner Contest 011 解説
AtCoder Beginner Contest 011 解説
AtCoder Inc.
AtCoder Beginner Contest 015 解説
AtCoder Beginner Contest 015 解説
AtCoder Inc.
AtCoder Beginner Contest 020 解説
AtCoder Beginner Contest 020 解説
AtCoder Inc.
AtCoder Beginner Contest 021 解説
AtCoder Beginner Contest 021 解説
AtCoder Inc.
AtCoder Beginner Contest 002 解説
AtCoder Beginner Contest 002 解説
AtCoder Inc.
AtCoder Beginner Contest 008 解説
AtCoder Beginner Contest 008 解説
AtCoder Inc.
AtCoder Beginner Contest 006 解説
AtCoder Beginner Contest 006 解説
AtCoder Inc.
AtCoder Beginner Contest 005 解説
AtCoder Beginner Contest 005 解説
AtCoder Inc.
AtCoder Regular Contest 026 解説
AtCoder Regular Contest 026 解説
AtCoder Inc.
AtCoder Regular Contest 022 解説
AtCoder Regular Contest 022 解説
AtCoder Inc.
AtCoder Regular Contest 049 解説
AtCoder Regular Contest 049 解説
AtCoder Inc.
AtCoder Beginner Contest 035 解説
AtCoder Beginner Contest 035 解説
AtCoder Inc.
AtCoder Beginner Contest 014 解説
AtCoder Beginner Contest 014 解説
AtCoder Inc.
AtCoder Regular Contest 046
AtCoder Regular Contest 046
AtCoder Inc.
What's hot
(20)
AtCoder Beginner Contest 016 解説
AtCoder Beginner Contest 016 解説
AtCoder Regular Contest 042 解説
AtCoder Regular Contest 042 解説
AtCoder Beginner Contest 010 解説
AtCoder Beginner Contest 010 解説
AtCoder Beginner Contest 025 解説
AtCoder Beginner Contest 025 解説
AtCoder Regular Contest 043 解説
AtCoder Regular Contest 043 解説
AtCoder Beginner Contest 030 解説
AtCoder Beginner Contest 030 解説
AtCoder Beginner Contest 011 解説
AtCoder Beginner Contest 011 解説
AtCoder Beginner Contest 015 解説
AtCoder Beginner Contest 015 解説
AtCoder Beginner Contest 020 解説
AtCoder Beginner Contest 020 解説
AtCoder Beginner Contest 021 解説
AtCoder Beginner Contest 021 解説
AtCoder Beginner Contest 002 解説
AtCoder Beginner Contest 002 解説
AtCoder Beginner Contest 008 解説
AtCoder Beginner Contest 008 解説
AtCoder Beginner Contest 006 解説
AtCoder Beginner Contest 006 解説
AtCoder Beginner Contest 005 解説
AtCoder Beginner Contest 005 解説
AtCoder Regular Contest 026 解説
AtCoder Regular Contest 026 解説
AtCoder Regular Contest 022 解説
AtCoder Regular Contest 022 解説
AtCoder Regular Contest 049 解説
AtCoder Regular Contest 049 解説
AtCoder Beginner Contest 035 解説
AtCoder Beginner Contest 035 解説
AtCoder Beginner Contest 014 解説
AtCoder Beginner Contest 014 解説
AtCoder Regular Contest 046
AtCoder Regular Contest 046
Similar to abc031
基礎構文班 15回目 メソッド
基礎構文班 15回目 メソッド
XMLProJ2014
AtCoder Beginner Contest 026 解説
AtCoder Beginner Contest 026 解説
AtCoder Inc.
人工無脳バトル 1st STEP 回答と解説
人工無脳バトル 1st STEP 回答と解説
JustSystems Corporation
2011年11月11日
2011年11月11日
nukaemon
cp-7. 配列
cp-7. 配列
kunihikokaneko1
CODE FESTIVAL 2014 本選 解説
CODE FESTIVAL 2014 本選 解説
AtCoder Inc.
8_C言語入門 - 条件分岐について(if-else if-else)
8_C言語入門 - 条件分岐について(if-else if-else)
bc_rikko
AtCoder Beginner Contest 028 解説
AtCoder Beginner Contest 028 解説
AtCoder Inc.
Or seminar2011final
Or seminar2011final
Mikio Kubo
Similar to abc031
(9)
基礎構文班 15回目 メソッド
基礎構文班 15回目 メソッド
AtCoder Beginner Contest 026 解説
AtCoder Beginner Contest 026 解説
人工無脳バトル 1st STEP 回答と解説
人工無脳バトル 1st STEP 回答と解説
2011年11月11日
2011年11月11日
cp-7. 配列
cp-7. 配列
CODE FESTIVAL 2014 本選 解説
CODE FESTIVAL 2014 本選 解説
8_C言語入門 - 条件分岐について(if-else if-else)
8_C言語入門 - 条件分岐について(if-else if-else)
AtCoder Beginner Contest 028 解説
AtCoder Beginner Contest 028 解説
Or seminar2011final
Or seminar2011final
More from AtCoder Inc.
TCO2017R1
TCO2017R1
AtCoder Inc.
AtCoderに毎回参加したくなる仕組み
AtCoderに毎回参加したくなる仕組み
AtCoder Inc.
Square869120 contest #2
Square869120 contest #2
AtCoder Inc.
Disco Presents ディスカバリーチャンネルプログラミングコンテスト2016 本選 解説
Disco Presents ディスカバリーチャンネルプログラミングコンテスト2016 本選 解説
AtCoder Inc.
Chokudai Contest 001
Chokudai Contest 001
AtCoder Inc.
AtCoder Regular Contest 048
AtCoder Regular Contest 048
AtCoder Inc.
MUJINプログラミングチャレンジ2016 解説
MUJINプログラミングチャレンジ2016 解説
AtCoder Inc.
AtCoder Beginner Contest 033 解説
AtCoder Beginner Contest 033 解説
AtCoder Inc.
DDPC 2016 予選 解説
DDPC 2016 予選 解説
AtCoder Inc.
arc047
arc047
AtCoder Inc.
CODE FESTIVAL 2015 沖縄ツアー 解説
CODE FESTIVAL 2015 沖縄ツアー 解説
AtCoder Inc.
CODE FESTIVAL 2015 解説
CODE FESTIVAL 2015 解説
AtCoder Inc.
CODE FESTIVAL 2015 予選B 解説
CODE FESTIVAL 2015 予選B 解説
AtCoder Inc.
AtCoder Regular Contest 045 解説
AtCoder Regular Contest 045 解説
AtCoder Inc.
CODE FESTIVAL 2015 予選A 解説
CODE FESTIVAL 2015 予選A 解説
AtCoder Inc.
AtCoder Beginner Contest 029 解説
AtCoder Beginner Contest 029 解説
AtCoder Inc.
AtCoder Regular Contest 044 解説
AtCoder Regular Contest 044 解説
AtCoder Inc.
天下一プログラマーコンテスト2015 予選B 解説
天下一プログラマーコンテスト2015 予選B 解説
AtCoder Inc.
天下一プログラマーコンテスト2015 予選A E問題 解説
天下一プログラマーコンテスト2015 予選A E問題 解説
AtCoder Inc.
More from AtCoder Inc.
(19)
TCO2017R1
TCO2017R1
AtCoderに毎回参加したくなる仕組み
AtCoderに毎回参加したくなる仕組み
Square869120 contest #2
Square869120 contest #2
Disco Presents ディスカバリーチャンネルプログラミングコンテスト2016 本選 解説
Disco Presents ディスカバリーチャンネルプログラミングコンテスト2016 本選 解説
Chokudai Contest 001
Chokudai Contest 001
AtCoder Regular Contest 048
AtCoder Regular Contest 048
MUJINプログラミングチャレンジ2016 解説
MUJINプログラミングチャレンジ2016 解説
AtCoder Beginner Contest 033 解説
AtCoder Beginner Contest 033 解説
DDPC 2016 予選 解説
DDPC 2016 予選 解説
arc047
arc047
CODE FESTIVAL 2015 沖縄ツアー 解説
CODE FESTIVAL 2015 沖縄ツアー 解説
CODE FESTIVAL 2015 解説
CODE FESTIVAL 2015 解説
CODE FESTIVAL 2015 予選B 解説
CODE FESTIVAL 2015 予選B 解説
AtCoder Regular Contest 045 解説
AtCoder Regular Contest 045 解説
CODE FESTIVAL 2015 予選A 解説
CODE FESTIVAL 2015 予選A 解説
AtCoder Beginner Contest 029 解説
AtCoder Beginner Contest 029 解説
AtCoder Regular Contest 044 解説
AtCoder Regular Contest 044 解説
天下一プログラマーコンテスト2015 予選B 解説
天下一プログラマーコンテスト2015 予選B 解説
天下一プログラマーコンテスト2015 予選A E問題 解説
天下一プログラマーコンテスト2015 予選A E問題 解説
Recently uploaded
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
Ken Fukui
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScript
yuitoakatsukijp
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ssusere0a682
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
Ken Fukui
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
Ken Fukui
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
YukiTerazawa
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
Ken Fukui
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
Ken Fukui
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
koheioishi1
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdf
yukisuga3
Recently uploaded
(10)
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScript
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdf
abc031
1.
A 問題 レベルアップ
2.
概要 • 攻撃力 𝐴
と防御力 𝐷 が与えられます。 • どちらかを 1 加算した後の両方の積として考えられる最大値を求め てください。
3.
解法 • (𝐴 +
1)𝐷 と 𝐴(𝐷 + 1) のうち大きい方を出力します。 • 入出力関数や条件分岐を組み合わせます。 • もしも最大値や最小値を求めるライブラリ等があればコードを書きや すくなります。
4.
B 問題 運動管理
5.
概要 • 𝐿 分以上
𝐻 分以下の範囲で運動する必要があります。 • 各 𝐴𝑖 に対して、𝐴𝑖 < 𝐿 なら 𝐿 − 𝐴𝑖 を、𝐿 ≦ 𝐴𝑖 ≦ 𝐻 なら 0 を、𝐴𝑖 > 𝐻 なら -1 を出力してください。
6.
解法 • 問題 A
のように入出力関数や条件分岐を組み合わせて解くことがで きます。 • この問題ではさらにループや再帰関数を用いて計算を行う必要があ ります。
7.
C 問題 数列ゲーム
8.
概要 • 高橋君と青木君が数列で遊びます。 • 最初に高橋君が要素の
1 つに丸を付けて、その後青木君が別の要 素 1 つに丸を付けます。 • 2 つの丸に囲まれた範囲(両端含む)を取り出し、左から交互に高橋 君、青木君の得点に加算します。 • 青木君が自分の得点が最大となるように丸をつける(複数あるならそ れらのうち最も左に丸をつける)とき、高橋君が得られる最大得点を 求めてください。 • 2 ≦ 𝑁 ≦ 50
9.
青木君の行動について • 青木君の行動について、例とともに確認します。 • 例:
数列が[1, -3, 3, 9, 1, 6] • 高橋君が左から 2 番目の要素 -3 を選んだ場合について考えます。 • 青木君は、左から 1 番目、3 番目、4 番目、5 番目、6 番目の要素を 選ぶことができます。 • それぞれの選び方において、残る数列は [1, -3], [-3, 3], [-3, 3, 9], [-3, 3, 9, 1], [-3, 3, 9, 1, 6] となり、青木君の得られる得点は順に -3, 3, 3, 4, 4 となります。 • 最終的に青木君は左から 5 番目の要素に丸を付けます。
10.
解法 • 高橋君が丸を付ける場所を固定したとき、青木君の行動がわかるの で、青木君がどこに丸を付け、結果どちらが何点得られるかは一意 に定まります。 • 高橋君の得点を求めるには、高橋君がここに丸を付けた場合に何 点得られるかをすべての要素について求めておいて、それらの最小 値を出力すれば解くことができます。
11.
注意事項 • この問題には負の値が登場します。 • 負の値の取り扱い(使用する変数が符号付きなのか符号無しなの かなど)に注意してください。
12.
D 問題 語呂合わせ
13.
概要 • 正の整数 𝑣1,
… , 𝑣 𝑁と文字列 𝑤1, … , 𝑤 𝑁 が与えられます。 • 文字列 𝑠1, … , 𝑠 𝐾 をうまく定めて、数字 𝑖 を文字列 𝑠𝑖 に変換すること によりどの整数 𝑣𝑗 も対応する文字列 𝑤𝑗 にできるようにしてください。 • 1 ≦ 𝑁 ≦ 50 • 1 ≦ |𝑠𝑖| ≦ 3 • 1 ≦ 𝑣𝑖 ≦ 109 • 1 ≦ |𝑤𝑖| ≦ 27
14.
部分点解法 • 先に文字列 𝑠1,
… , 𝑠 𝐾 を決めて、それらが条件を満たすか判定しま す。 • データセット 1 において最大 (33+32 + 3)3 通りの組み合わせを試 すことになりますが、この大きさならば余り多くの時間をかけずに計 算することができます。 • 一方、データセット 2 になってくると最大 (263+262 + 26)9 通りを試 すことになってしまい、これでは間に合いません。
15.
考察 • 文字列の長さが固定された場合どうなるでしょうか? • 実は、𝑠1,
… , 𝑠 𝐾 の長さが定まると、文字列 𝑠1, … , 𝑠 𝐾 が文字列 𝑤1, … , 𝑤 𝑁 のうちどの範囲に合致するかが一意に定まります。 • 範囲が定まれば、𝑠1, … , 𝑠 𝐾 は一意に定まります (定まらなかった、 すなわち矛盾したらその長さの固定の仕方では答えが無いことが言 えます)。
16.
満点解法 • 文字列 𝑠1,
… , 𝑠 𝐾 の長さを固定することで、O( |𝑤𝑖|× 𝐾)で答えを求 めることができます。 • 𝑠1, … , 𝑠 𝐾 の文字列長は 3 以下なので、全体の計算量は O(3 𝐾 × |𝑤𝑖|× 𝐾) に抑えることができ、これならばデータセット 2 でも高速に動作します。
Download now