Closeable は Close しなければ閉じられない

非常に当たり前だが、以下のコードでは "closed" が出力されることはない。 package sandbox; import java.io.Closeable; import java.io.IOException; public class Sandbox { public static void main(String[] args) throws Exception { String a = get()…

AtCoder Grand Contest 013 C - Ants on a Circle

問題 http://agc013.contest.atcoder.jp/tasks/agc013_c 解法 解説の通りにやった。Rustでは map を使って for を消せることを学んだ。 コード use std::fmt::Debug; use std::io; use std::io::{Read, Stdin}; use std::str; use std::str::FromStr; use st…

CS Academy Round #29: Root Change

問題 https://csacademy.com/contest/round-29/task/root-change/ツリーの各頂点 i について、 i を根とした時に切断してもツリーの高さが変化しない辺の数を出力してください。 解法 editorial のコード通りです。いわゆる全方位木dpと呼ばれる手法です。 …

ABC062/ARC074

Rust でやってみました。標準入出力は他の人のを拝借してきたけど、 println マクロは出力ごとに flush しているようなので注意が必要そう。もっときれいに書けるようになりたい。 A - Grouping http://abc062.contest.atcoder.jp/tasks/abc062_a fn next() …

AtCoder Beginner Contest 010 D - 浮気予防

問題 D: 浮気予防 - AtCoder Beginner Contest 010 | AtCoderRust で Dinitz を実装した コード use std::fmt::Debug; use std::io; use std::io::{Read, Stdin}; use std::str; use std::str::FromStr; use std::usize; use std::cmp; use std::collections…

Codeforces Round #411 (Div. 1) C. Ice cream coloring

問題 http://codeforces.com/contest/804/problem/Cn 頂点のツリー T と m 種類のアイスクリームがあります。T の各頂点はアイスクリームの集合をもっています。あるアイスクリーム i をもつ頂点同士は、連結なサブグラフになっています。m 頂点の無向重みな…

Google Cloud Platform の GPU インスタンスの Ubuntu 16.04 LTS に TensorFlow をインストール

自分用メモ。使っている GPU は NVIDIA Tesla K80 を 1 枚。 # CUDAやドライバ諸々入れてもらう sudo curl -O http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_8.0.61-1_amd64.deb sudo dpkg -i ./cuda-re…

TopCoder SRM 710 Div 1 Easy: ReverseMancala

解法 操作Aと操作Bは完全に対称な操作であることが分かる。操作Aをしまくって1箇所に集め、操作Bをしまくって復元すれば良い。 コード import java.util.ArrayList; import java.util.Collections; public class ReverseMancala { private int N; private Ar…

Codeforces Round #402 (Div. 2) E. Bitwise Formula

# 問題http://codeforces.com/contest/779/problem/EMビットからなる変数がN個与えられます。各変数は、代入か、異なる2つの変数の AND OR XOR のいずれかの結果です。すべての変数の合計値が最小になるような変数 '?' と最大になるような変数 '?' を求めて…

Codeforces Round #397 E. Tree Folding

問題 Problem - E - Codeforcesツリーがあって、ある頂点から同じ長さの枝が2本出ている時、そのうち1本を取り除くことが出来ます。この操作を繰り返してツリーを直線に出来る場合、その最小の長さを出力してください。 解法 葉から登っていき、自分より下方…

AtCoder Regular Contest E - Snuke Line

問題 E: Snuke Line - AtCoder Regular Contest 068 | AtCoder 解法 とても重要な事実として、M以下のxの倍数を、x=1..Mについて列挙すると、その数はM logMくらいになります。自然数xのM以下の倍数の数はM/x個なので、これをx=1..Mについて全て足し合わせる…

log4j2.xmlの置き場所

Gradle環境ではlog4j2の設定ファイルlog4j2.xmlはsrc/main/resourcesに置くっぽい。

8VC Venture Cup 2017 - Elimination Round F. PolandBall and Gifts

問題 http://codeforces.com/contest/755/problem/Fプレゼント交換をします。iさんはp[i]さんにプレゼントを渡します。複数の人が同じ人にプレゼントを渡すことはありません。K人がプレゼントを忘れました。プレゼントを忘れた人はプレゼントを受け取れませ…

AtCoder Regular Contest 067 E - Grouping

問題 E: Grouping - AtCoder Regular Contest 067 | AtCoder 解法 dp[i][member] := i人をmember人未満のグループに分ける組合せとしてDPします。 コード import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java…

Codecraft-17 and Codeforces Round #391 (Div. 1 + Div. 2, combined) D. Felicity's Big Secret Revealed

問題 http://codeforces.com/contest/757/problem/D0と1からなるn文字の文字列が与えられます。この文字列の好きな位置(先頭や末尾も含むN+1個)に仕切りを入れることができます。仕切りはいくつ入れても構いませんが、同じ位置に2個以上入れることはできま…

Codeforces Round #390 (Div. 2) D. Fedor and coupons

問題 http://codeforces.com/contest/754/problem/D[l, r] のような範囲の組が N 個あります。このうちK個を選び、K個すべてが重なる範囲を最大にしたいです。最大値と、その時選ぶ範囲のidを出力してください。 解法 非想定解法っぽい Treap コード import …

2016年を振り返って2017年の目標を決める

2016年の良かったこと ジムに行って筋トレした Kaggleに参加した ICDMで発表した ルンバを買った ガルパンを観た Reactをやった 会社を辞めなかった 2016年の良くなかったこと 競プロが疎かになった 血糖値 コレステロール値 2017年の目標 競プロを頑張る AO…

Push-Relabel による最大フローアルゴリズム

はじめに この記事はCompetitive Programming (その2) Advent Calendar 2016 - Adventarの23日目の記事として書かれました。最初に、一般的なフローネットワークについて触れてます。これは始点と終点を除く頂点について、入ってくるフローと出ていくフロ…

退学を支える技術

この記事は退学 Advent Calendar 2016 - Adventarの22日目の記事です。アドベントカレンダーに投稿されている記事を見ると、退学した人間の自分語りか退学する予定の自分語りの記事しかないので、ここでは少し趣向を変えて、退学の技術的なノウハウを共有し…

2016-2017 ACM-ICPC Southwestern European Regional F Performance Review

問題 Attachments - 2016-2017 ACM-ICPC Southwestern European Regional Programming Contest (SWERC 2016) - Codeforces根つき木があって、各頂点にはランクとコストが定められています。各頂点について、その頂点の子孫であり、かつ、その頂点のランク未…

AtCoder Regular Contest 065 F - シャッフル / Shuffling

問題 https://arc065.contest.atcoder.jp/tasks/arc065_d 解法 dp[x][y] := x 文字目まで決めて1をy個使ってできる決め方の数とします。l 文字目まで見るとき、どこまでがシャッフルされる範囲に含まれるかというのを前もって計算しておけば良いです。 コー…

Codeforces Round #385 (Div. 1) B. Hongcow's Game

問題 http://codeforces.com/contest/744/problem/Bn x n の行列があります。行列の要素は全て非負整数で、対角成分はすべて0です。この行列に対して、n以下の自然数の集合Sをクエリとして投げると、各行についてとなる x 列目の要素のうち最小のものを返し…

AtCoder Regular Contest 066 D - Xor Sum

問題 D: Xor Sum - AtCoder Regular Contest 066 | AtCoder 解法 解説動画を観ました。www.youtube.com 解法 import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.PrintWriter; import java.util.NoSuchE…

生徒会長 角谷杏

角谷杏は生徒会長という役職だが、大洗女子学園が学園艦であるという性質上、生徒会長というのも一高校の役職というよりも、地域の支配者という感じがする。OVAでもそのへんに言及があった気がする。そんな会長の活躍を振り返っていきたい。 学校の代表とし…

ガールズ&パンツァー 9話

ガルパン Advent Calendar 2016 - Adventarの記事として書かれました。ガルパン9話「絶体絶命です!」で泣いた視聴者は多いと思います。ご多分に漏れず、私も毎回泣くので、それについて書きます。 「無謀だったかもしれないけどさあ、あと1年、泣いて学校生…

レオポンさんチーム車長 ナカジマ

ガルパン Advent Calendar 2016 - Adventarの記事として書かれました。出典: http://girls-und-panzer.jp/chara_nakajima.htmlナカジマといえば、終盤の決勝戦からポルシェティーガーとともに参戦した自動車部のレオポンさんチームの車長ですが、自動車部の…

DISCO presents ディスカバリーチャンネル コードコンテスト2016 本戦 C - 01文字列

問題 C: 01文字列 - DISCO presents ディスカバリーチャンネル コードコンテスト2016 本戦 | AtCoder 解法 ある位置を決めて、そこから前を操作1で、そこから後ろを操作2で作ることを考えます。決め打ちすべき位置はセグメントの隙間だけで良く、置換操作は…

CODE FESTIVAL 2016 Elimination Tournament Round 1 A - グラフ / Graph

問題 http://cf16-tournament-round1-open.contest.atcoder.jp/tasks/asaporo_c 解法 求めるべき2つの木は元のグラフの最小全域木の部分木であることは明らかなので、最初に最小全域木を作ります。S-Tパスの最も大きい辺を切るのが最適なので、各クエリに対…

リクルートコミュニケーションズ (RCO) におけるプログラミングコンテストの活用について

この記事は Recruit Engineers Advent Calendar 2016 の3日目の記事です。www.adventar.org リクルートコミュニケーションズ (RCO) とは? まずはこのサイトを見てください。www.rco.recruit.co.jpサイトトップに表示される仕事中の(はずの)社員の画面に "…

C++ (gcc) で 128 ビット整数を使う

128 ビット整数を使いたいけど boost が入ってないので多倍長整数が使いづらいという環境で __int128 なるものの存在を知ったのでメモ。自前でパースとか出力とかを用意するのでやや面倒だが、多倍長整数ライブラリを持っていなくても安心。 #include <bits/stdc++.h> using</bits/stdc++.h>…