kmjp's blog

競技プログラミング参加記です

天下一プログラマーコンテスト2013 予選A : A - 天下一株式会社採用情報、B - 天下一難易度設定

コンテストに参加してみた。
A,B,Cは解けてD,Eは部分点。Tシャツゲットならず。
Tシャツゲットにはもう1段階部分点を稼がないといけないのであと一歩だったね。
これで上位勢が抜ければ次回はTシャツ狙えるかな?
D,Eは後で練習するとして、まずはA,Bから。

http://tenka1-2013-quala.contest.atcoder.jp/tasks/tenka1_2013_qualA_a
http://tenka1-2013-quala.contest.atcoder.jp/tasks/tenka1_2013_qualA_b

A - 天下一株式会社採用情報

初期の社員数は42で、毎年春に倍になる。
1億3千万人を超えたときの社員数は何人か。

倍々していくだけ。
最初毎年42人入ると勘違いした…同じ勘違いした人多数。
コードで書かなくてもいい問題。

void solve() {
	int f,r,i,j,k,l,x,y,tx,ty;
	i=42;
	while(i<130000000) i*=2;
	_P("%d\n",i);
	return;
}

B - 天下一難易度設定

ある問題の難易度は、5つのパラメータの和で表される。
N個の問題が与えられたとき、難易度が20未満のものを数えよ。

題意通り数えるだけ問題。

void solve() {
	int f,r,i,j,k,l,x,y,tx,ty,aa[5];
	
	cin>>f;
	j=0;
	FOR(i,f) {
		cin>>aa[0]>>aa[1]>>aa[2]>>aa[3]>>aa[4];
		if(aa[0]+aa[1]+aa[2]+aa[3]+aa[4]<20) j++;
	}
	_P("%d\n",j);
	
	return;
	
}

まとめ

A,BとC以降の難易度差が大きい。
A,Bがあまり面白くないのが残念だなぁ。