初投稿(自己紹介&AtCoderで解いた問題の一部について)
いきなり問題について云々言うのもあれなのでまずは少しばかり自己紹介をば・・・
・自己紹介
- 名前:severrabaen(読み方は適当にどうぞ(特に決めてません))
- 年齢:15歳(高1)
- Twitter:
- プログラミング歴(=競プロ歴):約8.5ヵ月(この記事を書いている時点で111日連続ACを目指しています)
- 書ける言語:C,C++,Python3,HTML(ここまでがよく使うやつです)VBA,Swift,JS(ここまでは学校の情報の授業で覚えました)。バージョンとかは勘弁してください。
初投稿なものでブログの書き方が分かりません。拙い編集だと思います。すいません。文章の後に()を乱用します。
(追記)
一応解いた問題一覧という意味で
https://kenkoooo.com/atcoder/?user=severrabaen
・AtCoderの過去問を解いてみて
適当な問題を引っ張ってきます。点数ごとにまとめていきます。簡単すぎるのはやるだけとしか書けないので300点位からにします。点数が分けられていなかった時代のやつは主観で点数分けして入れます。順番がぐちゃぐちゃです(自分の提出記録を適当に見ているため)
・300点編
AGC019A Ice Tea Store
適当に式立ててmin取るだけ 。
https://beta.atcoder.jp/contests/agc019/submissions/3305584
AGC012A AtCoder Group Contest
効率良く参加者を集めるとソートした後、2i(iは1≦i≦nの自然数)番目の参加者を足していけば良い事が分かる。
https://beta.atcoder.jp/contests/agc012/submissions/3284677
AGC009A Multiple Array
i個目のボタンは1項目("こうめ"です。"こうもく"でなく)からi項目までしか増加させないので与えられた数列を逆から見て行ってA[i]%B[i]!=0ならB[i]-A[i]%B[i]を変数に入れて記憶させて次の項を見る際に足せばよい。
https://beta.atcoder.jp/contests/agc009/submissions/3266552
・400点編
ABC096D Five,Five Everywhere
出力する数は全て素数にしなければいけないのでまず適当な5で割ると1余る素数(任意の5個で合成数にしたいので出力する数列(Nとします)の全ての項でN[i]%5の結果が同じ数なら条件を満たすので)を用意して(自分は11にした)、そこから素数なら出力して次へ、違うなら次へ(5の倍数を足す)。
https://beta.atcoder.jp/contests/abc096/submissions/2700970
AGC015B Evilator
良い感じの条件分岐が思いついたので勝った。
https://beta.atcoder.jp/contests/agc015/submissions/2873043
・500点編
ABC059D Alice&Brown
入出力例見て「思いつけば実装は超簡単じゃないか・・・?」と思って書いて出したら本当に当たってた例(解説を後で見たら想定解だったらしい)。コードだけ見たら100,200点問題にありそうな感じのコード。
https://beta.atcoder.jp/contests/abc059/submissions/2854344
ARC082B Derangement
入力段階でboolのvector(vとした)を用意しておき、p[i]==iならtrue、p[i]!=iならfalseを入れた。
その後、もう1度数列を見て、v[i]==trueならv[i]とv[i+1]をswap。その回数を記録し出力。
https://beta.atcoder.jp/contests/arc082/submissions/3002519
・700点編
AGC004C AND Grid
始めて解けた700点問題。端が紫になる入力が与えられないことを利用する。東大のOCで競プロの講演があったがそこで例題として出ていた。
https://beta.atcoder.jp/contests/agc004/submissions/3207888
大分絞りましたが(書くのが疲れてきた)、こんなところで(今後は定期的に書いていきます)。
どうなんでしょう?長文なんですかね?何はともあれ、最後までお読みくださりありがとうございました‼