int main() { int a[50][2]; int n; int k1=0; int k2=0; int k3=0; int k4=0; cin >> n; for (int i = 0; i < n; i++) { cin >> a[i][0] >> a[i][1]; } for (int i = 0; i < n; i++) { if (a[i][1]>0) if (a[i][0]>0) k1++; else k2++; else if (a[i][0]>0) k4++; else k3++; } if ((k2>=3)or(k2==2)and(k1>3)or(k3>5)or(k4>9)) cout << "Clock is broken" << "\n"; else cout << k2 << k1 << ":" << k3 << k4 << "\n"; return 0; }
Входные данные: 147*(5) И так, я предлагаю посмотреть сколько "5" удаляется за 1 раз
ПОКА нашлось (5555) ИЛИ нашлось (3333) ЕСЛИ нашлось (5555) ТО заменить (5555, 3) ИНАЧЕ заменить (3333, 5) КОНЕЦ ЕСЛИ
5555 --> 3 Уходит четыре "5". 147 / 4 = 36 (3) 36 раз у нас "5555" заменится на "3", и останется еще три "5". Наша строка:(36*(3) + 555) Теперь "3333" ---> 5 36 / 4 = 9 (0) 9 раз "3333" заменим на "5", получаем 9*(5) + 555 = 12*(5) "5555" --> 3 12 / 4 = 3(0) 3 раза "5555" заменим на "3" 333 Конец. ответ: 333
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку