OverleafでVimやEmacsのキーバインドを使う

TL;DR; プロジェクトの詳細画面に行き、左上に表示されるメニューをクリックするとサイドバーが表示されます。 サイドバーから Keybindings の項目を None → Vim or Emacs に変更します。 詳細 Overleaf上でVimのキーバインドを使用したいと思ったのですが、…

三井住友信託銀行プログラミングコンテスト D - LuckyPin

問題概要 \(N\)桁のラッキーナンバーから\(N-3\)桁を消して残りの\(3\)桁を暗証番号として設定する。 このとき、暗証番号は何種類考えられるか?ただし、ラッキーナンバーや暗証番号はいずれも\(0\)から始まって良いものとする。 制約 \(4\ \leq \ N\ \leq \…

ABC145D - Knight

問題概要 2次元平面上の原点(0, 0)にチェスのナイトの駒が置かれている。 ナイトがマス\((i, j)\)にある時、\((i+1, j+2)\) か \((i+2, j+1)\)のどちらかにのみ動かすことができる。 目的地\((X, Y)\)まで移動させる総数を\(10^{9}+7\)で割ったあまりを求め…

ABC144D Water Bottle 解説

問題概要 底面が\(1\)辺\(a\ cm\)の正方形で、高さが\(b\ cm\)であるような直方体の容器に体積\(x\ cm^{3}\)の水を入れたのち傾けていく時、水が溢れる限界の角度を求める。 制約 \(1\ \leq a,\ b \leq 100 \) \(1 \leq x \leq a^{2}b\) 問題へのリンクはこ…

CODEFORCES 1139 A. Even Substrings

問題概要 \(N\)桁の数字だけで構成された文字列\(s\)が与えられる。 \(s\)の部分文字列\(s[l...r]\)が偶数になるような\([l, r]\)の組み合わせの総数を求めよ。 制約 \(1\ \leq \ N\ \leq 65000\) time limit per test 0.5sec 問題へのリンクはこちら 考察 \…

Technocup B (CODEFORCES)

問題概要 \(N\) 要素の配列 \( a_1, a_2, ... a_N \) を \(K\) 個に分割する。 \(K\) 個に分割されたそれぞれの要素の最小値のうち、最大になるものを求めよ。 制約 \( 1 \leq K \leq N \leq 10^{5}\) \( -10^{9} \leq a_i \leq 10^{9} \) 問題はこちら 考え…

CODEFORCES 318 A. Even Odds

問題概要 \(1\)以上\(N\)以下を満たす数字の中で、\(K\)番目に該当する数を求めよ。 ただし、\(N\)個の数字は以下の規則によって並べ替えられるものとする \(1\)以上\(N\)以下を満たす奇数をはじめに並べる その後ろに残った偶数を並べる 数は昇順で並ぶもの…

ARC003B さかさま辞書

問題概要 \(N\)個の文字列が与えられた時、それぞれの文字列の末尾から逆順に並べた辞書を作成しようとしている。 与えられた文字列から逆順に並べた辞書を作成し、元の文字列をその逆順辞書の順番で出力する。 制約 \(1≤N≤100\) 文字列は全て英小文字からな…

ARC34B

問題概要 正整数\(n\)に対し、\(n\)の十進表記における各桁の和を\(f(n)\)で表す。正整数\(N\)が与えられた時に、\(x+f(x)=N\)を満たす正整数\(x\)を全て求めよ。 制約 \(1≤N≤\)1018 考えたこと Nの制約が 1018 ということもあり、\(O(N)\)のアルゴリズムで…

ABC99 C - Strange Bank

問題概要 ある銀行では、お金の引き出しを難しくするために、一回の操作で引き出せる金額が以下のいずれかである。 1 円 6 円、 62 円、 63 円 9 円、 92 円、 93 円 この銀行からちょうどN 円を引き出す時の最小引き出し回数を求めよ。 制約 1 ≤ N ≤ 100000…

ABC96 C-Grid Repainting 2

問題概要 H行W列のマス目で表されるキャンバスがあり、最初、全てのマス目は白色である。 このキャンバスに黒い絵の具を使って絵を描く時、\(s_{i,j}\) = '#'の時、マス(i, j)を黒色、\(s_{i,j}\) ='.'の時、マス(i, j)を白色にすることがゴールである。 し…

ABC 89 C-March

問題概要 N人の人がいて、i番目の人の名前は\(S_i\) この中から、以下の条件を満たすように3人を選ぶ 全ての人の名前がM, A, R, C, H のどれかから始まる 同じ文字から始まる名前を持つ人が複数いない これらの条件を満たすように3人を選ぶ方法の総数を求め…

ABC76 C-Dubious Document2

問題概要 宝物が入っていそうな箱を開けたいが鍵がかかっている。 この箱には鍵がかかっていて、開けるためには、英小文字からなる文字列Sが必要 鍵となりうる文字列S'を見つけ、これは、文字列Sの0個以上|S|個いないの文字が'?'に置き換わった文字列である…

ABC75 C問題

問題概要 自己ループと二重辺を含まない\(N\)頂点\(M\)辺の無向連結グラフが与えられる。 \(i\)番目の辺は頂点\(a_i\)と頂点\(b_i\)を結ぶ。 グラフから辺を取り除いた時、グラフ全体が火連結になるような辺のことを橋と呼ぶ時、橋の本数を求めよ。 制約 \(2…

ABC 70 C

問題概要 N台の時計があり、i(1 ≤ i ≤ N)番目の時計の針は、ちょうど\(T_i\)秒で時計盤を1周する。 全ての時計の針はまっすぐ上に向いている時、全ての時計の針がもう一度まっすぐ上に向くのに要する時間を求めよ。 制約 1 ≤ N ≤ 100 1 ≤ \(T_i\) ≤ 1018 答…

ABC 61 C

問題概要 空の配列が1つあ理、この配列に整数を挿入する操作を\(N\)回行う。 \(i(1 ≤ i ≤ N)\)回目の操作では、配列に整数\(a_i\)を\(b_i\)個挿入する。 \(N\)回の挿入操作後の配列の中で\(K\)番目に小さい数を求めよ。 制約 \(1 ≤ N ≤ \)105 \(1 ≤ a_i, b_…

ABC 54 C問題

問題概要 自己ループと二重辺を含まない\(N\)頂点\(M\)辺の重み無し無向グラフが与えられる。 \(i\)番目の辺は頂点\(a_i\)と頂点\(b_i\)を結ぶ。 頂点1を始発として、全ての頂点を1度だけ訪れるパスは何通りあるか求めよ。 制約 \(2 ≤ N ≤ 8\) \(0 ≤ M ≤ N(…

全国統一プログラミング王決定戦予選B

問題概要 3つの文字列\(A, B, C\)が与えられる。これらはそれぞれ、英小文字からなる長さ\(N\)の文字列である。 目標: これら3つの長さを等しくすること 操作: 文字列\(A, B, C\)のうち1つを選び、さらに\(1\)以上\(N\)以下の整数\(i\)を指定する。そして…

CODE THANKS FES 2017(Parallel) B

問題概要 英小文字からなる文字列 S が与えられます。 S の後ろに英小文字からなる任意の文字列 T (空文字列も含む)を連結することで、回文にしたいです。 条件を満たす文字列 T のうち、 T の最小の長さを求めてください。 制約 1 ≤ |S| ≤ 50 文字列Sは英小…

ABC 108 C問題

問題概要 整数\(N, K\) が与えられる。\(N\)以下の整数の組\((a, b, c)\)であって、\(a+b, b+c, c+a\) が全て\(K\)の倍数であるような物の個数を求めよ。ただし、\(a, b, c\)の順番を入れ替えただけの組も異なるものとする。また、\(a, b, c\)のなかに同じ数…

ABC 109 C問題

問題概要 数直線状に \(N\) 個の都市があり、\(i\) 番目の都市は、座標\(x_i\) にある。座標 \(X\) から出発し、全ての都市を訪れなければならない。移動方法は正整数Dを定めると次のとおりである。 座標 \(y\) から座標 \(y+D\) に移動する 座標 \(y\) から…

ABC110 C問題

問題概要 英小文字のみからなる文字列 \(S, T\) が与えられる。 文字列 \(S\) に対して、次の操作を何度でも行うことができる。 2つの異なる英小文字 \(c_1, c_2\) を選び、\(S\) に含まれる全ての\(c_1\) を\(c_2\)に、\(c_2\) を\(c_1\)に置き換える 0回以…

ABC111 C問題

問題概要 数列 \(a_1\), \(a_2\), ... , \(a_n\) が次の条件を満たす時、/\/\/\/と呼ぶことにする。 各 \(i = 1, 2, ... n - 2 \) について、 \( a_i = a_{i+2} \) 数列に現れる数はちょうど2種類 偶数長の数列 \(v_1, v_2, ... , v_n\)が与えられる。要素…

ABC112 C問題

問題概要 とある場所にピラミッドが建設されていた。 ピラミッドには 中心座標 (\(C_X, C_Y\)) と 高さ \(H\)が定まっており、座標\((X, Y)\) の高度は \(max(H-|X - C_X| - |Y - C_Y|, 0)\) であった。 とある探検家の人が、このピラミッドの中心座標と高さ…

ABC113 C問題

問題概要 AtCoder国には、N個の県があり、これらの県には合計でM個の市が属している。 市 \(i\) が誕生したのは、 \(Y_i\) 年であり、県 \(P_i\) に属している。複数の市が同じ年に誕生することはないとする。 この時、それぞれの市に12桁の認識番号を割り振…

ABC114 C問題

競プロ精進日記をつけていこうと思います。とは言っても、実力が全然ないので、かける内容もほとんどないのですが、しばらくは、解けなかった問題 and 解説見て真新しいと感じた内容 をブログという形で残していこうと考えています。 しばらくの間は振り返り…

Rails fields_for と accepts_nested_attributes_for を使うときの注意点

はじめに Rails を使用して、何か作成するとき、必ずと言っていいほど、ネストしたフォームを作成することになる。しかしながら、毎回同じ場所で詰まってしまい、解決にかける時間がもったいなかったので、押さえるべきポイントを自分のメモがわりに残してお…

Rails で QiitaのOmniAuthを使ってログインしてみた

動機 友人たちと、Qiitaのリーダーアプリを作成することになり、全員の勉強も兼ねて、Rails × Swift で作成することになった. しかし、gemのバージョンがもう対応していなかったり、QiitaのOmniAuthに関して、実際に使ってみた記事がほとんどなかったりして…

MySQLの自動起動設定を無効にしたい

普段はMySQLをプロジェクト開発時に毎回立ち上げるのが面倒なので、自動で起動するように設定しています。しかしながら、初めてDockerを触ることになり、Docker上でMySQLがうまく起動しないため、同じプロセス番号を使用してしまっているのではないかと思い…