雰囲気で書いたのであってるか(正しいか)どうかは知らん。呼び出すたびにリバースするだけのやつ。適当にやったのにちゃんと動くからgoはえらい(そういう話ではない)
続きを読む「レッドコーダーが教える、競プロ・AtCoder上達のガイドライン」中級編の100問を解く vol2 No.18~No.33
E869120さんの超絶まとめQiitaが話題になっていました。
全三部作で、初級編は茶色、中級編は水色、上級編は黄色になるためのアルゴリズムやデータ構造のリンク、勉強法などがまとめられています。このうち中級編には「分野別 初中級者が解くべき過去問精選 100 問」という節があり、アルゴリズムごとに基本から応用まで良問が揃っています。ありがとうございます。
ということでこいつらをやっつけていきます。都合上、AtCoderとAOJで解答できる問題のみとなります。
前回はこちら。
「レッドコーダーが教える、競プロ・AtCoder上達のガイドライン」中級編の100問を解く vol1 ~No.17 - 電波ビーチ
今回は33問目まで。(随時更新予定 ...たぶん)
続きを読む「レッドコーダーが教える、競プロ・AtCoder上達のガイドライン」中級編の100問を解く vol1 ~No.17
E869120さんの超絶まとめQiitaが話題になっていました。
全三部作で、初級編は茶色、中級編は水色、上級編は黄色になるためのアルゴリズムやデータ構造のリンク、勉強法などがまとめられています。このうち中級編には「分野別 初中級者が解くべき過去問精選 100 問」という節があり、アルゴリズムごとに基本から応用まで良問が揃っています。ありがとうございます。
ということでこいつらをやっつけていきます。都合上、AtCoderとAOJで解答できる問題のみとなります。
- 全探索:全列挙
- 全探索:工夫して通り数を減らす全列挙
- 5. AtCoder Beginner Contest 095 C - Half and Half
- 6. 三井住友信託銀行プログラミングコンテスト2019 - D - Lucky PIN
- 7. JOI 2007 本選 3 - 最古の遺跡
- 8. Square869120Contest #6 B - AtCoder Markets
- 9. JOI 2008 予選 4 - 星座探し
- 全探索:ビット全探索
- 全探索:順列全探索
続きはこちら。
「レッドコーダーが教える、競プロ・AtCoder上達のガイドライン」中級編の100問を解く vol2 No.18~No.33 - 電波ビーチ
今回は17問目まで。(随時更新予定 ...たぶん)
続きを読むgolangでゼロ埋め
fmt.Sprintf
を使います。
s := fmt.Sprintf("%04d\n", 12) fmt.Println(s) // 0012
golangでsliceの要素をひとつ消したsliceが欲しい
まあこれですよね
http://or3.hatenablog.com/entry/2020/01/13/111700or3.hatenablog.com
package main import ( "fmt" ) func main() { arr := []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10} fmt.Println(arr, len(arr), cap(arr)) // [1 2 3 4 5 6 7 8 9 10] 10 10 i := 3 // l = arr[:i] + arr[i+1:] python風にかくとこう arr = append(arr[:i], arr[i+1:len(arr)]...) // 3番目のインデックスを消したよ fmt.Println(arr, len(arr), cap(arr)) // [1 2 3 5 6 7 8 9 10] 9 10 arr = append(arr[:2], arr[3:len(arr)]...) // ↑からさらに2番目のインデックスを消したよ fmt.Println(arr, len(arr), cap(arr)) // [1 2 5 6 7 8 9 10] 8 10 }
https://play.golang.org/p/YWUmGXi29Uk
変数を使い回すためにappend
の第2引数の可変長スライスの末尾を指定しているんだけど、なんかほかに(理解と実装が)楽な方法があったらおしえてくださいだぜ
golang, 適当に趣味でやってるだけ*1 でプロダクト一切つくってないしなんか作れたらいいんだけどな、とくになんもないね
*1:それを言ったら現状プログラミング全般そうなんだけど