「第28回 なごやんばるツーデーマーチ」に参加した話

こんにちは.kurokojiです.

タイトルに書いてある通り,12/12(土)「第28回 なごやんばるツーデーマーチ」の20kmコースに参加しました!!
今回は参加して思ったことなど綴っていきたいと思います.

因みに,@nemu_sou君と女子二人と一緒に歩きました.

4時起き

―ツーデーマーチ参加者の朝は早い

我々,寮生は纏まってバスやタクシーに乗ってスタート地点である「名護市21世紀の森」に行く.
そのためには朝4時に起きなければならない.
前日の21時に就寝したが起きるのがとても辛かった.

そんな僕の傍にいてくれたのは,冷えた缶コーヒーだった.前日,冷蔵庫に入れず外に放置していたが十分に冷えていて目が冴えた.
ありがとう.缶コーヒー.

ゼッケン

ツーデーマーチでは背中にゼッケンをつけることが必須である.
「ひとことメッセージ」なるものがあり,自由に記述する欄があった.

TwitterのIDを書きました.フォロワーは増えませんでした.

歩くぞ!!

40kmコースの人達より1時間半遅れて8:00に出発.
20kmコースは「勝山と屋部みどりの道コース」という名前もついており,勝山公民館前から嘉津宇岳を望めたり,後半は綺麗な名護湾が見れるコースだ.

出発してから色んな人のゼッケンを見てると北海道や富山,神奈川など県外からの参加者が多数いて驚いた.さらに驚いたのが,高齢者が多いということだ.また,コメント欄に「アベ政治を許さない」と書いたよくわからない人個性的な人もいた.


最初の5kmくらいは大丈夫だった.「これ全然余裕やんけwww」とか調子乗ってたら10kmくらいのところで"勝山"が登場.
上り坂が続くのはとてもつらかった.だけれども綺麗な景色をたくさん見ることが出来た.

しばらくして,サービスの勝山シークヮーサーのジュースを頂いた.おかげで疲れが吹っ飛んだ.

山を降りると右手に名護湾が見えた.ここからはほぼ一直線だったが,綺麗な海や涼しい風を堪能しながら歩くことが出来たので,飽きることは無かった.

歩いて行くと中学の頃に通っていた卓球道場が見え「懐かしいな~」と一年しか経ってないのに思った.時の流れは早いものである.

そんなことを言っているとゴールが近づいてきた.

ゴール!!

12:00頃に到着した.今までに無い達成感があった.もちろん今まで20kmも歩いたことが無かったからであるが,名護出身なのにまだ知らない景色があったことの驚きなども混じったものだった.

完歩

お腹が空いたので,おにぎりと売っていたタコライスを食べた.
そのとき,福岡出身の男性から話しかけられた.

色々な話をする中,沖縄高専のことなどの話も混ぜつつ楽しい会話ができた.これもツーデーマーチの良い点であると思う.

参加して全体的な感想

今までに無い体験が出来てとても良かった.
特に綺麗な景色は,日頃の自分の中にある邪悪を消し去ってくれるかのような効果があることを知れた.

来年は参加するかどうかはわからないが,やるなら20kmだと思う.流石に翌日のJOIに影響を及ぼす訳にはいかないので.

日頃,運動が出来ていない皆さんにはおすすめです.この機会に,来年参加することを検討してみてはいかがだろうか.

JOI 2015/2016予選に参加した話

こんにちは.kurokojiです.数日前にAdventCalendarの記事でもお話したように,結果が出てからJOIの話をするとのことでしたが,先日結果が出ました.

2完+3問目の部分点で220点になりました.

とても悔しい結果になってしまいました.

反省などを含め,書いたコードを晒そうと思います.

1問目

#include <cstdio>
#include <iostream>
#include <algorithm>
#include <string>

using namespace std;

int main()
{
	int pt[6];
	int tmp_1[4], tmp_2[2];
	int sum = 0;

	for (int i = 0; i < 6; i++){
		scanf("%d", &pt[i]);
	}

	for (int i = 0; i < 4; i++){
		tmp_1[i] = pt[i];
	}

	for (int i = 4, j = 0; i < 6; i++, j++){
		tmp_2[j] = pt[i];
	}

	sort(tmp_1, tmp_1 + 4);
	sort(tmp_2, tmp_2 + 2);
	reverse(tmp_1, tmp_1 + 4);
	reverse(tmp_2, tmp_2 + 2);

	for (int i = 0; i < 3; i++){
		sum += tmp_1[i];
	}

	sum += tmp_2[0];

	cout << sum << endl;
	
	return (0);
}

あとから気づいたのですが,全部の合計から引いた方がよりコンパクトなコードになったと思います.

2問目

#include <cstdio>
#include <iostream>
#include <algorithm>

using namespace std;

int main()
{
	int n, m;
	int st[101];

	scanf("%d%d", &n, &m);

	for (int i = 0; i < n; i++){
		scanf("%d", &st[i]);
	}

	for (int k = 1; k <= m; k++){
		for (int i = 0; i < n - 1; i++){
			if (st[i] % k > st[i + 1] % k){
				swap(st[i], st[i + 1]);
			}
		}
	}

	for (int i = 0; i < n; i++){
		cout << st[i] << endl;
	}

	return (0);
}

これは書いてあることそのままやれば良かったので簡単でした.これにはあまり言うことは無いでしょう.

3問目

#include <cstdio>

using namespace std;

int main()
{
	printf("88\n");

	return (0);
}

解けなくて辛かった.部分点だけ狙いにいきました.1つ目のinputは人力で出来たので,その結果をただ単に書いて出しました.

感想

3問目の解法を思いつかなかったのが悔しい.とにかく,AOJとか解きまくって覚えるしかないのかな...
もっと努力しないといけないのが身に染みて分かりました.

また1年生で予選を突破出来た人はいません.久留米は突破してる人いるし僕たち相当差を付けられてるのでは?
来年は行きます.