Hatena::Grouptopcoder

hama_DU@TopCoderへの道

2012-03-09SRM383,384,385 (Practice)

SRM 384 Library

|  SRM 384 Library - hama_DU@TopCoderへの道 を含むブックマーク はてなブックマーク -  SRM 384 Library - hama_DU@TopCoderへの道

http://www.topcoder.com/stat?c=problem_statement&pm=7659

  • 方針を検討
    • 条件に合うDocumentを数えればいいらしい
    • 同じDocumentを数えてしまわないようにSetで管理する
import java.util.HashSet;
import java.util.Set;

public class Library {

	public int documentAccess(String[] records, String[] userGroups, String[] roomRights) {
		int cnt = 0;
		Set<String> done = new HashSet<String>();
		for (String r : records) {
			String[] data = r.split(" ");
			boolean isok = false;
			for (String user : userGroups) {
				for (String rr : roomRights) {
					if (data[1].equals(rr) && data[2].equals(user)) {
						isok = true;
					}
				}
			}
			if (isok) {
				if (!done.contains(data[0])) {
					done.add(data[0]);
					cnt++;
				}
			}
		}
		return cnt;
	}
}