oj1045:学校の外の木

タイトルが必要とする
道路上の木の行のゲート長L外部学校、隣り合う木の間隔は1メートルです。我々は、軸の位置番号0、他端位置Lに、軸として道路の一端を道路番号を置くことができ、各整数軸点、すなわち、0,1,2、...、L、木の種であります。

地下鉄を構築するために使用する道路上のいくつかの分野がありますので。数は、その軸線とこれらの領域は、開始点と終了点を表します。整数である、部分領域間にオーバーラップすることができる領域の任意の既知の開始点と終了点の座標。さて、(端部領域において、2つのツリーを含む)我々これらの地域の木を除去しました。あなたの仕事は、これらの木の計算は、道路上にあるどのように多くの木々 、削除されています。
入力
入力二つの整数のL(1 <= L <=の最初の行 10000) とM(1 <= M <= 100)、 領域、LおよびMについての代表的な長さL、Mの数の間の道路とスペースで区切られています。次のMラインはスペースで区切られた2つの異なる整数、領域の開始点と終了点を示す座標を含みます。
出力
出力は、単一の整数を含む行、道路の表現上の残りの木の数を含みます。
入力サンプル

500 3
150 300
100 200は
470 471
出力サンプル

298は、
最近のコードに(密かに怠惰)は問題を読んでいない、以前のコードを理解するために、いくつかの比較的単純なを入れては= V =

#include<stdio.h>
int main(void)
{
	int L, M, i,b, c, j, k, s = 0, a[10000] = { 0 };
	scanf("%d %d", &L, &M);
	for (j = 0; j < M; j++)
	{
		scanf("%d%d", &b, &c);
		for (k = b; k <= c; k++)
			a[k] = 1;
	}
	for (i = 0; i < L + 1; i++)
		if (a[i] == 1)
			s++;
	printf("%d\n", L - s + 1);
	return 0;
}
公開された38元の記事 ウォン称賛27 ビュー3171

おすすめ

転載: blog.csdn.net/qq_45891413/article/details/105169831