Official

C - 皆勤賞 Editorial by kaage


連想配列などを用いて各人の登場回数を管理したり、\(S_1\) に含まれる人それぞれについて毎日参加しているかを調べたりすれば解くことができます。

#include <iostream>
#include <map>
#define rep(i, n) for (int i = 0; i < int(n); i++)
std::map<std::string, int> mp;
int main() {
	int N;
	std::cin >> N;
	rep(i, N) {
		int K;
		std::cin >> K;
		rep(j, K) {
			std::string s;
			std::cin >> s;
			mp[s]++;
		}
	}
	int ans = 0;
	for (const auto& i : mp)
		if (i.second == N) ans++;
	std::cout << ans << std::endl;
	return 0;
}

posted:
last update: