// Halle 1 #include #include #include #include #include #include ifstream in("fuses.in"); int ds = 0; int n, m, c; bool on[20]; int power[20]; int fuse, fusemax; #define MAX(a, b) ((a)>(b)?(a):(b)) bool Read() { ++ds; in >> n; in >> m; in >> c; if (n == m && m == c && c == 0) return false; for (int i = 0;i < n; i++) { in >> power[i]; on[i]=false; } fuse = 0; fusemax = 0; return true; } void Run() { cout << "Sequence " << ds << endl; int curr; for (int i = 0; i < m; i++) { in >> curr; curr --; if (on[curr]==true) { on[curr]=false; fuse-=power[curr]; } else { on[curr]=true; fuse+=power[curr]; fusemax=MAX(fuse, fusemax); } } cout << "Fuse was " << (fusemax>c?"":"not ") << "blown." << endl; if (fusemax<=c) cout << "Maximal power consumption was " << fusemax << " amperes." << endl; cout << endl; } int main() { while (Read()) Run(); return 0; }