Решите задачу на C# Series30. Даны целые числа K, N, а также K наборов целых чисел по N элементов в каждом наборе. Для каждого набора вывести сумму его элементов.
Скопируем число из ячейки A1 в ячейку P1. Поскольку ладья может ходить через неограниченное количество ячеек вниз и вправо, необходимо для каждой ячейки выбирать, из какого числа в строке до этой ячейки, и из какого числа в столбце выше этой ячейки должна сходить ладья, чтобы сумма ячеек при этом была максимальной. Для этого в ячейке Q1 запишем формулу =МАКС($P$1:P1)+B1 и скопируем её во все ячейки диапазона R1:AD1. В ячейке P2 запишем формулу =МАКС($P$1:P1)+A2 и скопируем её во все ячейки диапазона P3:P15. В ячейке Q2 запишем формулу =МАКС(МАКС($P2:P2);МАКС(Q$1:Q1))+B2 и скопируем её во все ячейки диапазона Q2:AD15. Получим ответ — 323.
https://imgur.com/a/zEYf69b (или скриншот, если не откроется ссылка)
Ваша программа:
1) Вы считываете все в одну строку, что не соответствует главному условию задачи: в файле даны строки, а не одна строка. На скриншоте приведено верное написание: пишем цикл for s in file.readlines(), так мы обозначим, что строк больше одной.
2) Для подсчета количества букв логично использовать встроенный метод str.count(''), однако если вы решили обойти это и использовать специальные переменные для подсчета (такой вариант решения возможен, хотя и менее эффективен с точки зрения написания кода), верное решение таким путем приведено на скриншоте №2
2.1) В программе №2 необходимо не забывать обнулять переменные
после каждого цикла, как это указано на скриншоте №2
Решение.
Скопируем число из ячейки A1 в ячейку P1. Поскольку ладья может ходить через неограниченное количество ячеек вниз и вправо, необходимо для каждой ячейки выбирать, из какого числа в строке до этой ячейки, и из какого числа в столбце выше этой ячейки должна сходить ладья, чтобы сумма ячеек при этом была максимальной. Для этого в ячейке Q1 запишем формулу =МАКС($P$1:P1)+B1 и скопируем её во все ячейки диапазона R1:AD1. В ячейке P2 запишем формулу =МАКС($P$1:P1)+A2 и скопируем её во все ячейки диапазона P3:P15. В ячейке Q2 запишем формулу =МАКС(МАКС($P2:P2);МАКС(Q$1:Q1))+B2 и скопируем её во все ячейки диапазона Q2:AD15. Получим ответ — 323.
ответ: 323.
Программа на Python приведена ниже
Объяснение:
https://imgur.com/a/zEYf69b (или скриншот, если не откроется ссылка)
Ваша программа:
1) Вы считываете все в одну строку, что не соответствует главному условию задачи: в файле даны строки, а не одна строка. На скриншоте приведено верное написание: пишем цикл for s in file.readlines(), так мы обозначим, что строк больше одной.
2) Для подсчета количества букв логично использовать встроенный метод str.count(''), однако если вы решили обойти это и использовать специальные переменные для подсчета (такой вариант решения возможен, хотя и менее эффективен с точки зрения написания кода), верное решение таким путем приведено на скриншоте №2
2.1) В программе №2 необходимо не забывать обнулять переменные
после каждого цикла, как это указано на скриншоте №2