//Trace On #include <iostream> #include <cstdlib> using namespace std; int n; int b[99]; int money; int min() { int min = 9999; int index = 1; if (b[0] % 2 != 0) { min = b[0]; index = 0; } for (int i = 1; i < n; i++) if (b[i] < min && b[i] % 2 != 0) { min = b[i]; index = i; } for (int i = index; i < n - 1; i++) { b[i] = b[i + 1]; } b[n - 1] = 0; return min; } int main() { do { cin >> n; } while (n < 1 || n > 1000000); for (int i = 0; i < n; i++) { do { cin >> b[i]; } while (b[i] < 1 || b[i] > 1000); money += b[i]; } while (money % 2 != 0) { money -= min(); } if (money % 2 == 0) if (money != 0) cout << money; else cout << "NIESTETY"; system("pause"); }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | //Trace On #include <iostream> #include <cstdlib> using namespace std; int n; int b[99]; int money; int min() { int min = 9999; int index = 1; if (b[0] % 2 != 0) { min = b[0]; index = 0; } for (int i = 1; i < n; i++) if (b[i] < min && b[i] % 2 != 0) { min = b[i]; index = i; } for (int i = index; i < n - 1; i++) { b[i] = b[i + 1]; } b[n - 1] = 0; return min; } int main() { do { cin >> n; } while (n < 1 || n > 1000000); for (int i = 0; i < n; i++) { do { cin >> b[i]; } while (b[i] < 1 || b[i] > 1000); money += b[i]; } while (money % 2 != 0) { money -= min(); } if (money % 2 == 0) if (money != 0) cout << money; else cout << "NIESTETY"; system("pause"); } |