Форум » Логические выражения » вопрос по заданию » Ответить

вопрос по заданию

Eugeny1984: Добрый день, друзья! Решаю задачу № 15 из егэ. https://yadi.sk/i/vIel6j1jp8JDOA. Написал код на питоне для нее. По идее должно работать, но выдает неверный ответ. Ответ 329 Могли бы вы подсказать, где ошибка и как можно вручную решить ? for A in range(-100, 4000): flag = 0 for x in range(0, 1001): for y in range(0, 1001): if ((2 * y + 4 * x < A) or (x + 2 * y > 80)) == False: flag == 1 break if flag == 1: break if flag == 0: print(A) break

Ответов - 2

OlgaChe1: Пусть вторая скобка ложна. Тогда область, что лежит ниже прямой у = 40 - х/2 критична для первой скобки. И А нужно выбирать так, чтобы область ниже второй прямой (первая скобка) перекрывала критичную. Так как прямая у = - 2х проходит круче, чем первая, то пересекаются они в точке х = 80, у = 0. Подставляем эти значения в первую скобку и находим А. А > 320, A = 321.

OlgaChe1: [pre]for a in range (400): flag = 0 for y in range (1000): for x in range (100): if ((2*y + 4*x) < a or (x +2*y > 80)) == False: flag = 1 if flag == 0: print (a) break[/pre]



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