Эта задача с открытыми тестами. Ее решением является набор ответов, а не программа на языке программирования. Тесты указаны в самом условии, от вас требуется лишь ввести ответы на них в тестирующую систему. В странах А и В считают время по-разному. В одном часе в стране А ровно M1 минут, а в одном дне ровно H1 часов. В стране В в одном часе ровно M2 минуты, а в одном дне ровно H2 часов. Минуты в обеих странах считаются одинаково. В какой-то момент в стране А началась засуха. Правительство этой страны знает, что в стране В засуха длилась ровно K дней (по исчислению страны B), и попросило ученых дать ответ на вопрос: «Как долго продлится засуха в стране А?». По подсчетам ученых, если сравнивать полное количество минут, то засуха в стране А будет дольше в T раз, чем в стране B. Через какое время страна А победит засуху по исчислению страны А? Выходные данные Для каждого теста требуется ввести в тестирующую систему три целых числа через пробел в следующем формате: KK HH MM где: KK - количество дней засухи в стране А по исчислению времени страны А. HH - количество часов засухи в стране А по исчислению времени страны А с учетом того, что уже KK дней. MM - количество минут засухи в стране А по исчислению времени страны А с учетом того, что уже KK дней и HH часов. Примечание Например, если K=5 , M1=7, H1=5, M2=10, H2=10, T=2 , то засуха бы продолжалась 28 дней 2 часа и 6 минут по исчислению времени страны А. ответ выглядел бы следующим образом: 28 2 6 Тест №1: K=1 , H1=1, M1=1, H2=1, M2=1, T=1 ; Тест №2: K=1 , H1=7, M1=2, H2=2, M2=7, T=1 ; Тест №3: K=2 , H1=4, M1=16, H2=8, M2=4, T=4 ; Тест №4: K=41 , H1=82, M1=94, H2=47, M2=8, T=93 ; Тест №5: K=41 , H1=45, M1=82, H2=4, M2=8, T=7 ; Тест №6: K=4 , H1=7, M1=32, H2=9, M2=4, T=4 ; Тест №7: K=40 , H1=16, M1=99, H2=26, M2=69, T=50 ; Тест №8: K=5 , H1=30, M1=29, H2=85, M2=29, T=48 ; Тест №9: K=22 , H1=85, M1=90, H2=86, M2=29, T=19 ; Тест №10: K=2 , H1=52, M1=60, H2=46, M2=76, T=33 . Формат результата Введите в поле три числа, разделенные пробелом - ответы на тест 4.
begin
var a:=ReadLines('m17.txt').JoinIntoString.ToIntegers;
a.Println;
var b:=a.Select((x,i)->Rec(x,i)).Where(x->x.Item1<0)
.Select(x->x.Item2).ToArray;
if b.Count<>2 then
Writeln('Количество отрицательных элементов не равно двум')
else begin
a:=SeqFill(b[0],0).Concat(a.Skip(b[0]).Take(b[1]-b[0]+1))
.Concat(SeqFill(a.Length-b[1]-1,0)).ToArray;
a.Println
end
end.
Тестовое решение:
23 14 7 15 0 13 -6 41 18 13 8 42 27 -11 3 19 10
0 0 0 0 0 0 -6 41 18 13 8 42 27 -11 0 0 0
Файл с исходными данными имеет имя m17.txt. Тестовый файл находится во вложении. Разбивка на строки сделана по 5 значений, но может быть совершенно произвольной. Также нет привязки именно к 17 числам, главное - чтобы отрицательных чисел было ровно два, иначе будет выдано сообщение о их неверном количестве.
2+4+6+...+198+200.
1. Самый короткий вариант
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016
begin
Writeln(Range(2,200,2).Sum)
end.
Результат:
10100
2. Более длинный и более "школьный" вариант
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016
begin
var s:=0;
var i:=2;
while i<=200 do begin
s:=s+i;
i:=i+2
end;
Writeln(s)
end.
3. Совсем "тупой школьный" вариант (решение "в лоб")
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016
var
i,s:integer;
begin
s:=0;
for i:=1 to 200 do
if i mod 2 =0 then s:=s+i;
Writeln(s)
end.
4. Улучшенный "школьный" вариант
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016
var
i,s:integer;
begin
s:=0;
for i:=1 to 100 do s:=s+2*i;
Writeln(s)
end.