C - おいしいたこ焼きの売り方 / AtCoderBeginnerContest #005

abc005.contest.atcoder.jp

#include <iostream>
using namespace std;

void Solve(int t)	{
	int n, a[100], m, b[100], pos=0;
	bool flg=false;

	cin >> n;
	for (int i=0; i<n; ++i)
		cin >> a[i];
	cin >> m;
	for (int i=0; i<m; ++i)
		cin >> b[i];
	if (n < m)	flg=false;
	else
		for (int i=0; i<m; ++i)	{
			flg=false;
			do {
				if (a[pos]<=b[i] && b[i]<=a[pos]+t)	{
					++pos;
					flg=true;
					break;
				}
			} while (++pos < n);
			if (!flg)	break; 
		}
	cout << (flg? "yes" : "no") << endl;
}

int main(void)	{
	int t;

	cin >> t;
	Solve(t);
	return 0;
}

売れるたこ焼きがあれば、最も古いたこ焼きを売る。
全て売り切ればyes、そうでない場合はnoを出力。
~了~