Bookshelf

JOI

こどふぉなんてなかったんや....あのDiv1Bとかbookshelfやってたら絶対解けたよね。 考えると重みが付いた最大増加部分列を求めると良いことがわかって、segtreeを使って処理。 (重さが全部1の時はよくあるやつ)重さの入力のが、並んでる順番に与えられてる…

Codeforces #164 div2

本選までにTopcoderとCodeforces両方Div1上がれたらしい。けどすぐ落ちそう。A. やる int n, ans; int h[50], a[50]; int main(){ cin >> n; rep(i, n) cin >> h[i] >> a[i]; rep(i, n){ rep(j, n){ if(i == j) continue; if(h[i] == a[j]) ans++; } } cout <…

SRM 567 Div1

○-- +1/-0 283位 rating : 1335 -> 1467 easy出してうなっとしていたら腹痛で死んでそのまま終わりました。easy提出遅すぎなんだよね。easy (sqrt(a) + sqrt(b)) ^ 2 = a + b + sqrt(ab)なので、abが平方数だと良くて、 a, bが共に平方数×kとかになればいい…

SRM 566 Div2

記念すべき初参加です ☆(ゝω・)vキャピなんで今まで出なかったのだろう... 結果 : ○×× +1/-0 Div199位 Room2位 rating : not rated -> 1335という結果でした。 初回だとこんな成績でもレート上がるらしい....Div1から一回で落ちないように頑張ります(フラグ)…

2013年の目標

1/2になってしまったけどよしとします・やること JOIの本選で400点以上を取る・やりたいこと こどふぉとか頑張る・やりたいけど無理そうなこと JMO春合宿行く

JOI2012-2013予選結果

JOI

予選結果やっと出ました。 落ちたと思っていたがなんとか通っていた(広義)らしい。 20 + 20 + 20 + 20 + 4 + 0で84点。5番はできる内容だったので悔しい(6はたぶん無理だった) 去年も点数同じでした(去年は3時間でギリギリ4完, 今年は1時間で4完と内容は違い…

JOI予選 2012-2013

JOI

予選敗退。5,6に2時間使ったのに...................5番typo....................................これ落ちたな(確信) マクロとかあれなので省略します1.やる int l, a, b, c, d; int main(){ scanf("%d %d %d %d %d", &l, &a, &b, &c, &d); printf("%d\n", …

JOI春合宿2008Day2 cheating

JOI

適当ににぶたんすると通る 問題文読み間違って無駄に難しくしてた... #include <cstdio> #include <algorithm> #include <climits> using namespace std; int n, m; int x[100000], y[100000]; bool C(int k){ int crt = -INT_MAX, num = 0; for(int i = 0; i < m && num <= n; i++){ if(</climits></algorithm></cstdio>…

AOJ0563 Walking Santa

AIZU ONLINE JUDGE 少し考えると始点の選び方の候補が絞られることがわかる。 nが奇数の時は1箇所に決まるが、偶数の時は4通り調べる。 偶数の時に2通りしか調べなかったり、答える座標が適切でなかったりしてわ〜してた。 #include <cstdio> #include <algorithm> #include <cstring> #i</cstring></algorithm></cstdio>…

AOJ0535 Crossing Black Ice

まあ深さ優先するだけ簡単だけど一発で通って嬉しかった 10分 #include <cstdio> #include <cstring> #include <algorithm> using namespace std; int m, n, ans; int dx[] = {-1, 1, 0, 0}; int dy[] = {0, 0, -1, 1}; int ice[100][100]; bool vis[100][100]; bool in(int x, int y){ r</algorithm></cstring></cstdio>…

AOJ0569 Illumination

AOJ0569 AIZU ONLINE JUDGE適当にdfsするとできた 前の予選の時は全然出来なかったなあ。 #include <cstdio> using namespace std; int w, h, ans; int bu[110][110]; bool used[110][110]; int dx[2][6] = {{-1,-1,0,1,0,-1}, {-1, 0, 1, 1, 1, 0}}; int dy[6] = {0</cstdio>…

PKU 3616 Milking Time

PKU

3616 -- Milking Time DP苦手すぎるなあ はじめから終わる時間+休憩時間にその区間が終わるとみなすと楽かも(ほとんど同じ) ifdefとか試しに使ってみた #include <cstdio> #include <algorithm> #include <queue> using namespace std; #undef DEBUG struct WORK{ int s, e, c; bool op</queue></algorithm></cstdio>…

K^2PC

Welcome to Kyuride Kagamiz Programming Contest (Easy) - Kyuride Kagamiz Programming Contest (Easy) | AtCoder 時間が無くて出れませんでしたが解いてみました まだA~Cしかやってません A : やるだけ #include <cstdio> using namespace std; int a, b, c, d, e</cstdio>…

リハビリ(^−^)

あー全然パソコン触れなくて悲しみ... 校内模試とはなんだったのでしょうかPKU 3254(3254 -- Corn Fields) bitdpすると解けます #include <cstdio> #include <cstring> using namespace std; #define mod 100000000 int m, n; int map[13][13]; int dp[1 << 12][12][12]; int </cstring></cstdio>…

JOI春合宿 2010-DAY1-1 (JOI Poster)

ジャッジ動いてないからあれだけどたぶん大丈夫 再帰するだけ #include <cstdio> #include <string> #include <iostream> using namespace std; int n, k, fact[21]; string s; string solve(int size, int pos){ string tmp = ""; if(size == 1){ tmp += 'J'; return tmp; } if(pos <=</iostream></string></cstdio>…

IJPC 2012 #1

中間やら塾やらで疲れたのでのんびり解いていた() 藤原さん満点とかやばすぎる..3は小課題3,4が全然わからなかった..12点解法はやるだけ #include "training.h" #include <cstdio> using namespace std; int rock[30000]; void init(int N, int A[]){ for(int i = 0;</cstdio>…

PKU1007

問題分を読めればわかります #include <cstdio> #include <algorithm> #include <vector> using namespace std; int m, n; vector<pair<int, int> > so; char dna[50][100]; bool comp(const pair<int, int>& a, const pair<int, int>& b){ return a.first < b.first; } int main(){ scanf("%d %d", &n, &m); getchar(); for</int,></int,></pair<int,></vector></algorithm></cstdio>…

PKU 3264 Balanced Lineup

segtreeの練習. RMQみたいなことをして差を取るだけ #include <cstdio> #include <climits> #include <algorithm> using namespace std; int hoge, N, Q, ans, tmp; typedef struct segtree{ static const int MAX_N = 1 << 18; int dat1[MAX_N * 2 - 1], dat2[MAX_N * 2 - 1]; int n; se</algorithm></climits></cstdio>…

Google Code Jam Round 1 A 2012

GCJ

結果から言うと20ptで死亡。 まずAに時間をかけすぎたのと、Bのデバッグが終わらなかった... 人権ない>

PKU3258 River Hopscotch

PKU

蟻本の練習問題。 岩の位置をソートして二分探索 #include <cstdio> #include <algorithm> using namespace std; int l, m, n; int rock[50000]; bool C(int d){ int last = 0; while(rock[last] < d){ last++; if(last == n) return false; } for(int i = 1; i < n - m; i++){ </algorithm></cstdio>…

AOJ0524 Searching Constellation

AOJ

あまり考えずに書いたので無駄なことしてる #include <cstdio> #include <vector> #include <algorithm> #include <map> using namespace std; int m, n, tmp; pair<int,int> ans; bool comp(const pair<int,int> a, const pair<int,int> b){ return a.first > b.first; } int main(){ while(scanf("%d", &m)){ if(m == 0</int,int></int,int></int,int></map></algorithm></vector></cstdio>…

AOJ0559 JOI Flag

bitDP初めてなのにこれをやったせいで苦戦しました. JOIの解説を読まないと解けませんでした...これだと解けるけどAOJではMLEします #include <cstdio> #include <cstring> using namespace std; const int mod = 100000; int n, m, count; char flag[21][21]; int fact[401];</cstring></cstdio>…

AOJVol5の残りのdp

http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0541 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0548 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0550 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp…

AOJ0520 Lightest Mobile

明らかに二分木なのでメモ化再帰するだけ lcmを求めるところで先に2つをかけていたのでオーバーフローしてずっと悩んでました そこでみすってるとは... #include <cstdio> using namespace std; typedef struct stick{ int lren, rren, sl, sr, weight; } STICK; in</cstdio>…

Google Code Jam Qualification Round 2012

学校行って塾に行った後解くという過酷な感じになって辛かった A,B,Cを解いたけどCのlargeを落として45点だった・・・まあ進めたのでいいか() 60点は普通に取れた感じがします(D読んでないですすみません) A. Speaking in Tongues やるだけ 全単射だし変換法…

Volume5をうめたいなあ()

AOJ0532 説明略 #include <cstdio> using namespace std; int a, b, c, d, e, f, g, h, j; int main(){ for(int i = 0; i < 3; i++){ scanf("%d %d %d %d %d %d", &a, &b, &c, &d, &e, &f); g = 3600 * (d - a) + 60 * (e - b) + (f - c); h = g / 3600; g %= 3600; </cstdio>…

AOJ0539 Pizza

なんかWAして悩んだけどよく考えたら確保した配列の要素が一個足りなかっただけだった(泣) 普通にやるとTLEするのでSをsortして配達先に最も近いSを2分探索で決めて足していくだけ #include <cstdio> #include <algorithm> #include <cmath> using namespace std; int d, n, m, ans, t</cmath></algorithm></cstdio>…

AOJ0529 Darts

JOI2007 本選の3番 蟻本のくじびきのやつみたいに2本ずつにわけて2分探索すれば間に合います #include <cstdio> #include <algorithm> #include <functional> using namespace std; int n, m, ans, fact; int k, lb, ub; int target[1000], tars[1002001]; void C(int p){ lb = 0, ub = fac</functional></algorithm></cstdio>…

AOJ0528 Common Sub-String

文字列をずらしてくらべて最大値更新していけば解ける #include <iostream> #include <string> #include <algorithm> using namespace std; int main(){ string a,b; int crtl,alen,blen,ans; while (cin >> a){ cin >> b; ans = 0; alen = a.size(); blen = b.size(); for(int i = 0; i <</algorithm></string></iostream>…

AOJ0542 Authentication Level

認証レベル〜 自分にはだいぶ難しかった.. 2つの事務所である認証レベルで新たに行ける部屋の数をDijkstraで求めて、事務所1でk個、事務所2でR-k個行ける時の認証レベルの最小値を更新していけばいいです #include<iostream> #include<cstdio> #include<queue> #include<vector> #include<algorithm> #in</algorithm></vector></queue></cstdio></iostream>…