Задача 6: Наборы пирожных На складе кондитерской фабрики хранятся пирожные двух видов — круассаны и эклеры. Круассанов A штук, а эклеров — B штук. Есть неограниченный запас подарочных коробок, в каждую коробку можно положить только три пирожных. При этом требуется, чтобы в коробке были пирожные обоих видов, то есть в одну коробку можно положить два круассана и один эклер или один круассан и два эклера.
Определите, можно ли упаковать все имеющиеся пирожные в коробки и выведите подходящий размещения пирожных по коробкам.
Входные данные
Программа получает на вход два целых числа A и B, записанных в отдельных строках. 1 ≤ A ≤ 109, 1 ≤ B ≤ 109.
Выходные данные
Если можно разложить все пирожные по коробкам в соответствии с условием задачи, программа должна вывести два целых числа. Первое число равно количеству коробок, в которых лежит два круассана и один эклер. Второе число равно количеству коробок, в которых лежит один круассан и два эклера.
Если разложить все пирожные по коробкам нужным нельзя, программа должна вывести одно число −1.
НА PYTHON
Система оценивания
Решение, правильно работающее только для случаев, когда числа A и B не превосходят 100, будет оцениваться в
Передавання даних може бути аналоговим чи цифровим (потік двійкових сигналів), а також модульованим за до аналогової модуляції, або за до цифрового кодування.
Передані дані можуть бути цифровими повідомленнями, що йдуть від джерела даних, наприклад, з комп'ютера або від клавіатури. Це може бути й аналоговий сигнал — телефонний дзвінок або відеосигнал, оцифрований у бітовий потік, з використанням імпульсно-кодової модуляції або більш розширені схеми кодування джерела. Кодування і декодування джерела здійснюється шифратором або кодуючим обладнанням.
Процес передавання даних від одного комп'ютера до іншого складається з декількох етапів (рівнів). Цей процес передбачає такі операції: отримання даних від користувача, їх стиснення, шифрування, формування пакетів на які розбиваються повідомлення, встановлення сеансу зв'язку між комп'ютером, що передає дані, та тим, що їх приймає, транспортування даних по каналах зв'язку, вибір найбільш ефективного маршруту передавання даних, формування вихідного документа з пакетів даних. На кожному з етапів використовують окремі протоколи, сукупність яких складає набір протоколів Інтернету, що має таку назву TCP/IP, що має таке тлумачення:
1) TCP (Transmission Control Protocol) - відповідає за організацію сеансу зв'язку між двома комп'ютерами у мережі.
2) IP (Internet Protocol) - відповідає за маршрутизацію, тобто за те, щоб пакет було доставлено за певною адресою.
За до протоколу TCP ПК перевіряє, чи всі частини отримано. При отриманні всіх порцій TCP розміщує їх в потрібному порядку і збирає в одне ціле.
Найвідоміші протоколи, які використовують у мережі Інтернет
1) HTTP (Hyper Text Transfer Protocol)
2) FTP (File Transfer Protocol)
3) POP (Post Office Protocol)
4) SMTP (Simple Mail Transfer Protocol)
5) Uucp (Unix to Unix Copy Protocol)
6) Telnet
7) DTN
Вот, задал одинаковую угловую скорость и добавил постоянное смещение между кружками. Теперь они бегают вместе.
Uses GraphABC;
Const
r1 = 18; { радиус кружков }
w = -0.035; { угловая скорость }
s = 7; { смещение по времени между кружками }
o1 = 180; { радиус вращения }
Var
x,y,t:integer;
begin
setwindowsize(900,600); {размер окна}
x:=450; y:=300; {центр окна}
lockdrawing; {рисование во внеэкранном буфере}
setpenwidth(2);
t := 0;
repeat
clearwindow; {очищение окна}
DrawCircle(450, 300, 200);
DrawCircle(450, 300, 160);
DrawCircle(450, 300, 120);
DrawCircle(450, 300, 80);
t:=t+1;
setbrushcolor(clLime); {время движения }
circle(x + round(o1 * cos((t+2*s)*w)), y - round(o1 * sin((t+2*s)*w)), r1);
setbrushcolor(clSkyBlue);
circle(x + round(o1 * cos((t+s)*w)), y - round(o1 * sin((t+s)*w)), r1);
setbrushcolor(clPurple);
circle(x + round(o1 * cos(t*w)), y - round(o1 * sin(t*w)), r1);
sleep(8); {задержка}
redraw; {формирование нового кадра}
until False;
end.