fork download
  1. #include <cstring>
  2. #include <string>
  3. #include <map>
  4. #include <deque>
  5. #include <queue>
  6. #include <stack>
  7. #include <sstream>
  8. #include <iostream>
  9. #include <iomanip>
  10. #include <cstdio>
  11. #include <cmath>
  12. #include <algorithm>
  13. #include <vector>
  14. #include <set>
  15. #include <list>
  16. #include <climits>
  17. #include <functional>
  18.  
  19. using namespace std;
  20.  
  21. struct Device{
  22. bool ON;
  23. int C;
  24. };
  25.  
  26. int main(){
  27. // freopen("in.txt", "r", stdin);
  28. int N, M, C, Cases = 1;
  29. while(scanf("%d %d %d", &N, &M, &C) != EOF){
  30. if(!N && !M && !C) break;
  31. printf("Sequence %d\n", Cases++);
  32. Device arr[100];
  33. bool Blow = 0;
  34. for(int i = 1; i <= N; i++) {scanf("%d", &arr[i].C); arr[i].ON = 0;}
  35. int Consumption = 0, MAX = 0;
  36. while(M--){
  37. int i; scanf("%d", &i);
  38. if(arr[i].ON) {Consumption -= arr[i].C; arr[i].ON = 0;}
  39. else if(Consumption+arr[i].C <= C) {Consumption += arr[i].C; arr[i].ON = 1;}
  40. else {Blow = 1; break;}
  41. MAX = max(MAX, Consumption);
  42. }
  43. (Blow) ? puts("Fuse was blown."):puts("Fuse was not blown.");
  44. if(!Blow) printf("Maximal power consumption was %d amperes.\n", MAX);
  45. puts("");
  46. }
  47. return 0;
  48. }
Success #stdin #stdout 0s 3344KB
stdin
2 2 10
5
7
1
2
3 6 10
2
5
7
2
1
2
3
1
3
0 0 0
stdout
Sequence 1
Fuse was blown.

Sequence 2
Fuse was not blown.
Maximal power consumption was 9 amperes.