Форум » Обработка числовых последовательностей » задача № 27 из стаграда апрель 2020 1-ый вариант » Ответить

задача № 27 из стаграда апрель 2020 1-ый вариант

Eugeny1984: Добрый день! Написал программу на 4 балла, но не работает. Подскажите, пожалуйста, где ошибка или может быть у кого нибудь есть код на паскале или на питоне на 4 балла, без вложенных циклов? https://yadi.sk/i/itBA1KIIsVosoQ. Мой код здесь, но тест не проходит- выводит 0, а должна 3 var m, b: array[0..59] of integer; n, count, i, p, x: integer; begin for i := 0 to 59 do begin m := 0; b := 0 end; count := 0; readln(n); for i := 1 to n do begin readln(x); p := x mod 60; if x <= 40 then m[p] += 1 else b[p] += 1 end; count += m[0] * b[0] + (b[0] * (b[0] - 1)) div 2; count += m[30] * b[30] + (b[30] * (b[30] - 1)) div 2; for i := 1 to 29 do count += m * b[60 - i] + b * b[60 - i] + m[60 - i] * b; writeln(count); end.

Ответов - 7

cabanov.alexey: 1) Неверное обнуление массива b и m. [pre2] for i:=0 to 59 do begin b[ i ]:=0; m[ i ]:=0; end;[/pre2] В остальном код верный. PS. Пример входных данных: 6 30 30 150 20 40 100 Пример выходных данных для приведённого выше примера входных данных: 3

Eugeny1984: cabanov.alexey Алексей, все равно ноль выводит, даже когда исправил обнуление массива. Я пробовал в разных версиях паскаля и все равно ноль. Скриншотом подтверждаю. Подскажите, пожалуйста, где ошибка? https://yadi.sk/i/i3DJh1V4C05mgw

Eugeny1984: Спасибо большое )!


cabanov.alexey: Это входные данные для другого варианта. Я правильные скинул в ответе выше ☝ Под ваши входные данные код такой [pre2] var m, b: array[0..79] of integer; n, count, i, p, x: integer; begin for i := 0 to 79 do begin m[ i ] := 0; b[ i ] := 0 end; count := 0; readln(n); for i := 1 to n do begin readln(x); p := x mod 80; if x <= 50 then m[p] += 1 else b[p] += 1 end; count += m[0] * b[0] + (b[0] * (b[0] - 1)) div 2; count += m[40] * b[40] + (b[40] * (b[40] - 1)) div 2; for i := 1 to 39 do count += m[ i ] * b[80 - i] + b[ i ] * b[80 - i] + m[80 - i] * b[ i ]; writeln(count); end.[/pre2]

Eugeny1984: cabanov.alexey Даже в этом коде все равно ноль выводит https://yadi.sk/i/eIzbdpZyaFzZlQ. А с какими входными данными первый вариант верно работает?

cabanov.alexey: Есть ошибки по коду (числа для 60, а не 80). Сверьтесь ещё раз. Вот оригинальная задача Вот код для неё

Eugeny1984: cabanov.alexey Отлично, теперь все работает



полная версия страницы