Python 은 1-9 배열 이 형 성 된 결과 100 의 모든 연산 식 의 예 를 실현 합 니 다.
1,2,........................................................................................예 를 들 어 1+2+34C 5+67C 8+9=100.
from functools import reduce
operator = {
1: '+',
2: '-',
0: ''
}
base = ['1', '2', '3', '4', '5', '6', '7', '8', '9']
def isHundred(num):
# 8 3 ,
arr = []
for index in range(8):
index = 7 - index
arr.append(num // (3 ** index))
num -= (num // (3 ** index)) * (3 ** index)
arr = map(lambda x: operator[x], arr)
#
formula = reduce(lambda x, y: x + y, zip(base, arr))
formula = list(formula)
formula.append('9')
formula = ''.join(formula)
#
res = eval(formula)
return res, formula
if __name__ == '__main__':
#
total = 3 ** 8
for i in range(total):
res, formula = isHundred(i)
if res == 100:
print(formula+' = 100')
결과:
/usr/bin/python3.5 /home/kang/workspace/Qt3d/test.py
123+45-67+8-9 = 100
123+4-5+67-89 = 100
123-45-67+89 = 100
123-4-5-6-7+8-9 = 100
12+3+4+5-6-7+89 = 100
12+3-4+5+67+8+9 = 100
12-3-4+5-6+7+89 = 100
1+23-4+56+7+8+9 = 100
1+23-4+5+6+78-9 = 100
1+2+34-5+67-8+9 = 100
1+2+3-4+5+6+78+9 = 100
이상 파 이 썬 이 1-9 배열 로 이 루어 진 결과 100 의 모든 연산 식 의 예 는 바로 편집장 이 여러분 에 게 공유 한 모든 내용 입 니 다.참고 가 되 고 많은 응원 부 탁 드 리 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.