2013-01-01から1年間の記事一覧

天下一プログラマーコンテスト2013本選戦略と反省

10位だった。

会津大学競技プログラミング合宿2013 Day 3

3日目の作問を @k_operafan さんとしたのでメモ。 主に自分の作問について。 解説は無いのであしからず…。 自分が作った問題の解説を挙げました。 https://www.dropbox.com/sh/ingo41xpnd6fuoi/5-8HaPoOhK/aizu_camp_2013全く推敲していませんので、多分適当…

SRM 589 Div.1 Easy Medium

こう考えられたらいいなぁというメモ.どちらもある条件を満たすまでの手数を最小化する問題. GooseTattarrattatDiv1 各iについて"s[i] = s[n-1-i]"となっていることが条件. 状態ベース "s[i] = s[n-1-i]"という条件から,対応する文字は必ず同じ文字に変…

Vertex Connectivity

割りとメジャーだけど点連結度の計算方法. 辺連結度 u-v間の辺連結度は,「消すとu-v間が非連結になる辺集合の最小サイズ」. これは,u->vの最大流に一致. 点連結度 uv間の辺連結度は,「消すとuv間が非連結になる頂点集合の最小サイズ」.「点連結度 下…

2次元FFT

http://jag2013spring.contest.atcoder.jp/tasks/icpc2013spring_f を解いたので,2次元FFTのやり方. 1次元FFT まずは,離散フーリエ変換を. 数列 f(0), f(1), …, f(N-1) に対するフーリエ変換は, ※の中の符号が逆だったりする事も有るけど問題無い. 逆…

ICPC World Finals 2013

全体の流れは[id:k_operafan:20130704:1372908597]を参照下さい.ここでは,自分の反省.何か思い出したらまた書きます. コンテスト中について 読んだ問題 A,B,C,E ※Bは説明が理解できなかったのでizさんにお願いしました. コーディング A 考察がまとまれ…

Javaの罠 Part4(Integer)

Integer同士を=で比較すると変な現象が起こります. ArrayList<Integer> list1=new ArrayList<Integer>(asList(1, 128)); ArrayList<Integer> list2=new ArrayList<Integer>(asList(1, 128)); System.out.println(list1.get(0)==list2.get(0)); System.out.println(list1.get(1)==list2.get(1)); </integer></integer></integer></integer>…

Javaの罠 Part3(PriorityQueue.remove)

プログラミングコンテストにてハマったことのある罠をご紹介します. PriorityQueue.removeについて.あまりハマることは無いですが,PriorityQueue.removeの計算量はです.うっかりだと思って書くと死にます.

Javaの罠 Part2(ArrayList.remove)

プログラミングコンテストにてハマったことのある罠をご紹介します. ArrayList.removeについて.ArrayListは隣接リストなどに使いますが,removeをすることがたまにあります. remove(int index) index番目のオブジェクトを削除して詰める. remove(Object …

Javaの罠 Part1(Map.containsKey/containsValue)

プログラミングコンテストにてハマったことのある罠をご紹介します. Mapについて.使う頻度の多い,Map.containsKey(Object)とMap.containsValue(Object). これらは,引数がgenericsに対応していないため,うっかりしていると変なオブジェクトを引数にして…

メモ

実線の長さが入っている.点線は考慮しない.dp(i,j)を[i,j]での答えとすると, v = dp1(i,r)+dp2(r,j)として, dp1(i,j) = v+x[j-1]-x[i] dp2(i,j) = v+y[i]-y[j-1] dp(i,j) = v+x[j-1]+x[i]+y[i]-y[j-1] となるrがある.dp1(i,r)+dp2(r,j)が暫定最適値より…

UVa 1074 Net Loss

UVa

多項式を区分的線形関数で近似する問題.お気に入りというわけではないが,ちょっと面白かった.便宜上,求める関数を [tex:g(x)=\begin{cases}a_1(x-c)+b & (xc) \end{cases}] とする. をどうにかしたい.ポイントは,2つ. bを決めるとa1とa2は独立に求ま…

UVa 11020 Efficient Solutions

UVa

EfficientなSolutionを思いついたのでメモ.条件を満たす点群(黒点)はこんな感じになる.各点を結んだ線分の左下か右上かを判定出来れば良い. y=-xに各点を射影すると諸々の処理が簡単にできる. 新しい点Pを追加 y=-x上での両脇の点を結ぶ線分より左下な…