tozangezan's diary

勝手にソースコードをコピペして利用しないでください。

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

AOJ 2507,2503,2502,2410,2277

AOJ

これだからオンラインジャッジは…(解けるまでずっとデバッグしていたら90分が経過していた)2507 dp[row][col][真ん中の一番最後につかったもの]でDP。遷移は9つ。 #include<stdio.h> int dp[102][102][3]; int main(){ int mod=1000000; int a,b; scanf("%d%d",&a,&b)</stdio.h>…

AOJ 2489,2490,2494

AOJ

RUPC 2013 の阪大セットで解けそうなものを解いてみました。2489 これはやるだけです #include<stdio.h> #include<algorithm> using namespace std; int ABS(int a){return max(a,-a);} bool palin(int a){ int b=0; int c=a; while(c){ b*=10; b+=c%10; c/=10; } return a==b; }</algorithm></stdio.h>…

AOJ 1102,0155,0198

AOJ

構文解析と面倒で残っていたものを片付けました。1102 罠が多すぎる。数字が大きくてオーバーフローするとか、iではなく1iと出力しないといけないとか。 #include<stdio.h> #include<algorithm> #include<string.h> using namespace std; bool ok; char str[1024]; pair<pair<int,int>,int>eq(int a); pair<pair<int,int></pair<int,int></pair<int,int></string.h></algorithm></stdio.h>…

AOJ1155,0264

AOJ

ICPCとかいうものがあるので、構文解析を練習することにしました。1155 構文解析とは何か、ということを知りました。 #include<stdio.h> #include<algorithm> #include<string.h> using namespace std; char str[100]; int v[3]; int eq(int a,int b); int ter(int a,int b){ if(str[a]=='(</string.h></algorithm></stdio.h>…

GCJ2013 Round 1B

GCJ

A-Large,B-Large,C-Smallで通過ですA: Greedyするだけ #include<stdio.h> #include<queue> #include<algorithm> using namespace std; int d[100]; int e[100]; int main(){ int a; scanf("%d",&a); int T=0; while(a--){ T++; int b,c;scanf("%d%d",&b,&c); for(int i=0;i</algorithm></queue></stdio.h>

SRM 578

解説を書きました https://speakerdeck.com/tozangezan/srm578-jie-shuo

SRM 577

今日はwriterがたくさんいたらしいです。250:EllysRoomAssignmentsDiv1 期待値の計算を数学します。数学するのが結構大変なのでかなりみんな提出が遅い…(自分も遅いです) import java.util.*; public class EllysRoomAssignmentsDiv1{ public double getAver…

TCO2013 Round2B

無理でした。Rating: 2149 -> -INF

CROC Champ 2013 Round 1

この画面で このボタンを押すと、 ↓見たい人はここをドラッグ↓ パソコンが爆発します。

SRM555 Div1Medium

解法:やるだけ さすがにこれは自明、なのに0C0を定義し忘れて死。ひどい。 public class XorBoard{ public int count(int a,int b,int c,int d,int e){ int mod=555555555; long ret=0; int C[][]=new int[3000][3000];C[0][0]=1; C[1][0]=C[1][1]=1; for(i…

SRM 575

またVasyl[alphacom]。今度はテストケースを作るのミスったらしいので、明らかにVasylが悪い。250: 解法:奇数と2^n(nは奇数)はBrus,他はJohnであることが帰納法で分かる。 意外と時間がかかりました。 public class TheNumberGameDivOne{ public String fin…

TCO2013 Round2A

難しすぎる。300 解法:Greedyとか怖すぎなのでDPした。 import java.util.*; public class TheLargestString{ public String find(String a,String b){ int n=a.length(); String[][]dp=new String[n+1][n+1]; for(int i=0;i<=n;i++) for(int j=0;j<=n;j++)…

SRM463 Div1Mediumとその他

463Med(500pts) 解法:変な制約から、a 解法が分かったら実装は一瞬でした。制約の1.5以上を1.125以上にすると急に難しくなるらしいです(なぜだろう?) import java.util.*; public class Nisoku{ public double theMax(double[]a){ double ret=0; Arrays.so…

「『JOI 2011年春合宿 Day1 の問題『Dragon』は強実装』はウソ」はウソ

JOI

まずは、あちらをご覧ください。 次に、こちらをご覧ください。 #include<stdio.h> #include<algorithm> #include<set> #include<map> using namespace std; pair<int,int> dat[100000]; int x[100000]; int y[100000]; int h,w,n; int L=-2100000000; int R=2100000000; int X[100001],Y[100001]; l</int,int></map></set></algorithm></stdio.h>…

SRM573,574 Div1Medium

今日から真面目に問題を解くことにする。573Med(450) 解法:どうみてもDijkstraやるだけ 解法は自明だが、#includeし忘れたりiとh間違えたりpriority_queueの型間違えたりしててどうしようもなかった。どう考えても演習量足りない。質より量の練習をすべきか…

SRM 573

朝するめは参加するとレーティングが必ず大暴落する。250:チームコンペティション 読んでない450:スキー 読んでない850:オオカミ https://speakerdeck.com/tozangezan/srm573-div1hard-div2hard-jie-shuo 45度回転させてcombinationする。 public class W…

受験体験記

受験体験してきました。1.はじめに 実はIOIの前から数学と化学はやってました。IOIから帰ってきてからは数学と化学と倫政をやっていました。年開ける頃に生物をやって、センター二週間前くらいからはひたすらセンター国語をやっていました。(桃パックは800切…

SRM459,460,461 Div1Medium

SRM459 Div1Med(500) 解法:DP 数え上げのDP典型なのにすっかり忘れていた。 public class NumberPyramids{ public int count(int a,int b){ int MOD=1000000009; if(a>=21)return 0; int C[]=new int[a]; int now=1; for(int i=0;i<a;i++){ if(i>0)now/=i; C[i]=now; now*</a;i++){>…

SRM208 Div1Hard

解法:最小費用流。同じ問題を作問してた過去に出題されてたことが発覚しただけ。 #include <vector> #include <algorithm> #include <iostream> #include <queue> #include <cstdio> using namespace std; typedef int Weight; const Weight INF=99999999; struct Edge{ int dst,cap;Weight cost,rev; };</cstdio></queue></iostream></algorithm></vector>…

SRM475 Div1Medium

解法:シミュレーションするだけ。modまわりが面倒。 一年の流れの順番が難しくて遷移も考えづらいし、MOD計算もややこしい。と思ったら逆元かけるだけだった。mod 1000000009で2の逆元とか自明だった… #include<stdio.h> #include<vector> #include<algorithm> using namespace std; typ</algorithm></vector></stdio.h>…

SRM 572

今日は開始前にやたらといろいろな人たちにArenaで声をかけられました。返事しきれない。またOnShuffle氏いたし。250 難しくて分からない。なんだこれ……。 適当に変なGreedyコードを書いて落とされる。別に解けてないし仕方が無い。 あとで聞いてみるとUnion…

KP^2C Vol.1

Virtual Arenaでコンテストに参加していました。2位。A:やるだけ #include<stdio.h> #include<stack> using namespace std; char str[6]; stack<char> S[100]; int main(){ int a; scanf("%d",&a); while(1){ scanf("%s",str); if(str[0]=='q')return 0; if(str[0]=='m'){ int b,c;</char></stack></stdio.h>…

SRM507,508,509 Div1Medium

今日もちょっとずつMediumを埋めていきます。SRM507 Div1Med(500) 解法:2辺の長さを決めるのはO(だいたいの体積^(5/6))で出来るので、それぞれについてもう1辺を決めます。 オーバーフローに注意。こんな問題どう考えてもオーバーフローが危険なんだから全…

SRM502~506 Div1Medium

4日間で100問Div1Medium解くとか言ってしまいましたが、どう考えても無謀だったのでゆっくりMedium解いています。SRM502 Div1Med(500) 解法:ソートしてDPをする。ソート基準を考える。 久しぶりにこういう問題を見たのでかかる時間だけでソートしてしまい反…

TCO2013 Round 1B

1年ぶりにTopCoder。これから復帰していきます。 250:やるだけ これはさすがに。 500:やるだけ これはさすがに。と思ったら覆うときに使う最小個数を求めるのを普通に間違えていた。演習量不足なので残念。 1000:やるだけ むずすぎでは><なんでみんな解い…