2020-08-01から1ヶ月間の記事一覧

ABC049C - 白昼夢

atcoder.jp 後ろから比較すれば、dream は確実に dream だし、erase は確実に erase。 比較する範囲を前にスライドしていく際には、ReadOnlySpan<char> を使った。 余計な string のインスタンスが生成されるのを回避し、速度と読みやすさを両立できたのでは。 usi</char>…

ABC085C - Otoshidama

atcoder.jp x + y + z = N なので x と y から z は決まる。z でのループは不要。x と y の二重ループで探索すればいい。 using System; namespace ABC085C { class Program { static void Main(string[] args) { var input = Console.ReadLine().Split(' ')…

ABC085B - Kagami Mochi

atcoder.jp 実は並び替える必要はなく、重複している値を取り除いて残ったものを数えればいい。 LINQ 便利。 using System; using System.Linq; namespace ABC085B { class Program { static void Main(string[] args) { var n = int.Parse(Console.ReadLine…

ABC088B - Card Game for Two

atcoder.jp 降順にソートして、先頭から 1 つずつ Alice と Bob 交互に割り振っていけばいい。 using System; using System.Linq; namespace ABC088B { class Program { static void Main(string[] args) { _ = int.Parse(Console.ReadLine()); var a = Cons…

ABC083B - Some Sums

atcoder.jp 各桁の和を求める部分、とくに各桁の値を取り出すのに悩んだ。 「10 で割った余りを求める→10で割る」を繰り返す泥臭い方法になったけど、 もっとスマートに書けないものかな。 using System; namespace ABC083B { class Program { static void M…

ABC087B - Coins

atcoder.jp 0 <= A, B, C <= 50 なので、所持している硬貨の枚数の組み合わせは最大 125000 通り。 組み合わせ全パターン計算して X と一致するものを数えても、2 秒以内で余裕で間に合う。 using System; namespace ABC087B { class Program { static void …

ABC081B - Shift only

atcoder.jp 配列の中身を全部 2 で割り切れた回数をカウントすればいいな。2 で割り切れなかったら、結果を出力して即終了で。 using System; using System.Linq; namespace ABC081B { class Program { static void Main(string[] args) { var n = int.Parse…

ABC081A - Placing Marbles

atcoder.jp 要は、入力された文字列の中に '1' が何個出現するかを数えればいいわけだ。 using System; using System.Linq; namespace ABC081A { class Program { static void Main(string[] args) { var answer = Console.ReadLine().Count(x => x == '1');…

からかい上手の(元)高木さん(9)(10)

「からかい上手の(元)高木さん」の 9 巻と 10 巻が同時発売したので両方購入。 (元)高木さんが西片くんとちーをからかうのは当然(?)として、 ちーまでが西片くんをからかおうとするのは微笑ましいけど「父親の威厳が…」と複雑な気分。 それでも3人仲睦まじい…

ABC086A - Product

昨日から始めた AtCoder。まずは AtCoder Beginners Selection を上から順に解いていく。 お次はこれ。 atcoder.jp 偶数かどうかを判定するには、2 で割った余りが 0 かどうかを見ればいい。今回は特に変わった解き方をせずシンプルに。 using System; names…

PracticeA - Welcome to AtCoder

ブログに書くネタ&プログラミング面接対策として、AtCoder を始めてみた。 まずは入門である AtCoder Beginners Selection からコツコツやっていく。 atcoder.jp b と c の代入に、あえての Deconstruct。 ただ単に Deconstruct を使ってみたかっただけ。 …

からかい上手の高木さん(14)

14巻では、西片に嫉妬してからかいではなくイジワルをしたり、一緒に映画を観ようと誘う勇気を出せなかったりと、高木さんの今までにない一面が見れて新鮮だった。尊い。 そんな高木さんが嫉妬する原因を作った北条さんは、浜口が相手になってしまうんだろう…

Material-UI の Button と React Router の Link を組み合わせる

Material-UI の Button をクリックしたら、React Router の機能を使ってページ遷移したいことが良くある。 useHistory フックで history オブジェクト取得しておいて、Button の onClick ハンドラ内で history.push してやれば実現できるけど、決まったパス…

ぼくたちは勉強ができない(18)

前巻にてうるかエンドで本編終了したと思いきや、まさかの全ヒロインぶんのエンドを描くという前代未聞のチャレンジに挑む本作。 今巻は理珠ルート。ただこれ、どちらかというと紗和子ルートじゃね?と思うくらいに紗和子が話の主役。成幸と理珠の二人で協力…

アオアシ(21)

セレクションのときからぶつかりあってきた葦人と阿久津だけど、ここに来て葦人の一番の理解者が阿久津になるかもしれない展開はアツイな。実際、葦人は阿久津のアドバイスで何か掴めてそうだし。葦人が初めてプレミア出場した試合でも、阿久津がコーチング…