#include "testlib.h" #include #include #include int main(int argc, char *argv[]) { setName("Validator for 'Outstanding Proteins'"); registerValidation(argc, argv); int n = inf.readInt(3, 10000, "N"); inf.readSpace(); int l = inf.readInt(1, 100, "L"); inf.readSpace(); int k = inf.readInt(2, std::min(n, 256), "K"); inf.readEoln(); std::set used_ids; for (int i = 0; i < n; ++i) { std::string id = inf.readWord(); if (id.length() < 1 || id.length() > 10) { quitf(_fail, "Protein '%s' has wrong length", id.c_str()); } for (size_t j = 0; j < id.length(); ++j) { char ch = id[j]; if (!('0' <= ch && ch <= '9' || 'A' <= ch && ch <= 'Z')) { quitf(_fail, "Protein '%s' has illegal character '%c'", id.c_str(), ch); } } if (used_ids.find(id) != used_ids.end()) { quitf(_fail, "Protein '%s' contained twice", id.c_str()); } used_ids.insert(id); for (int j = 0; j < l; ++j) { inf.readSpace(); inf.readInt(0, 9, "e"); } inf.readEoln(); } inf.readEof(); return 42; }