Домик черепахи расположен в начале прямой узкой грядки, на которой должны прорасти одуванчики – ее любимое лакомство. и вот черепахе приснился вещий сон. из него она узнала, что наконец-то после полуночи начнут расти одуванчики. ей даже приснилось, в какой момент времени, и в какой точке грядки вырастет каждый одуванчик. ровно в полночь черепаха выползла из домика, чтобы съесть все одуванчики и до следующей полуночи вернуться домой. черепаха может ползти со скоростью, не превосходящей величины vmax. одуванчик она съедает, остановившись на время d. если одуванчик начать есть, но не доесть до конца, то он засыхает, поэтому его надо съедать за один прием. одуванчики прорастают тем позже, чем дальше они расположены от начала грядки. в одной точке не могут прорастать несколько одуванчиков, а также несколько одуванчиков не могут прорастать в один момент времени. требуется определить, в какой момент времени черепаха сможет вернуться домой, съев все одуванчики и затратив на путешествие наименьшее время. входные данные в 1-й строке входного файла находятся 2 целых числа, разделенные пробелом: vmax (в см/мин) и d (в минутах), 0 < vmax ≤ 200, 0 ≤ d ≤ 500. во 2-й строке находится число n – количество одуванчиков (в штуках). 0 ≤ n ≤ 1400 при d = 0, в противном случае 0 ≤ n ≤ 200. в каждой из последующих n строк расположены: целое число xi – расстояние от одуванчика до начала грядки (в сантиметрах), 0 ≤ xi ≤ 32767, и через пробел ti – момент прорастания одуванчика (в формате hh: mm). пары в порядке возрастания расстояний. выходные данные выходной файл должен содержать момент времени возвращения черепахи домой (в формате hh: mm), округленный до целых минут в большую сторону. примечания 1. в часе – 60 минут, в сутках – 24 часа. 2. время в сутках изменяется от 00: 00 до 23: 59. 3. можете считать, что черепаха не меняет направления движения до тех пор, пока не доползет до последнего одуванчика. информатикс 894
#include <cstdlib>
#include <ctime>
int main()
{
using namespace std;
cout << "Enter size of array: ";
int N;
cin >> N;
int * ARR = new int[N];
srand(time(0));
int i;
for (i = 0; i < N; ++i)
ARR[i] = rand() % 100 + 1;
cout << "Here is an original array:\n";
for (i = 0; i < N; ++i)
cout << ARR[i] << " ";
cout << endl;
int temp = ARR[N - 1];
for (i = N - 1; i > 0; --i)
ARR[i] = ARR[i - 1];
ARR[0] = temp;
cout << "\nHere is a new array:\n";
for (i = 0; i < N; ++i)
cout << ARR[i] << " ";
cout << endl;
return 0;
}