はまやんはまやんはまやん

hamayanhamayan's blog

Fashion in Berland [Codeforces 教育 14 : A]

問題

http://codeforces.com/contest/691/problem/A

n個のボタンがあるジャケットがある。
n個のボタンの中でただ一つだけ開いているとき"YES"、それ以外なら"NO"を出力せよ。

例外として、ボタンが1つだけの時は、そのボタンが閉まっていれば"YES"、閉まっていないなら"NO"を出力する。

考察

1. やるだけ

実装

http://codeforces.com/contest/691/submission/19086579

int n;
int a[1010];
//-----------------------------------------------------------------
string solve() {
	if (n == 1) {
		if (a[0] == 0)
			return "NO";
		else
			return "YES";
	}

	int sum = 0;
	rep(i, 0, n) sum += a[i];

	if (sum != n - 1) return "NO";

	return "YES";
}
//-----------------------------------------------------------------
int main() {
	scanf("%d", &n);
	rep(i, 0, n) scanf("%d", &a[i]);

	cout << solve() << endl;
}