두 개의 난수 A와 B가 1, 2 또는 3으로 생성되었습니다.
당신의 임무는 1, 2 또는 3 일 수있는 세 번째 숫자 C를 무작위로 선택하는 것입니다. 그러나 C는 A 또는 B와 같을 수 없습니다.
- 예, A는 B와 같습니다.
- A = B 인 경우 C에는 두 개의 숫자 만 남을 수 있습니다.
- A가 B와 같지 않으면 C는 하나의 숫자 만 가질 수 있습니다.
- A와 B가 이미 선택되었다고 가정
이것이 파이썬에서 A와 B가 생성되는 방식입니다
A = random.randrange(1,4)
B = random.randrange(1,4)
이것이 이미 코드에 있다고 가정하십시오.
이것은 내가 파이썬에서 생각해 낸 가장 짧은 것입니다.
while True:
C = random.randrange(1,4)
if C != A and C != B:
break
이것이 A, B 및 C가 동일 할 수있는 것입니다.
- 1,2,3
- 1,1,2
- 2,3,1
- 3,3,2
이것이 A, B 및 C가 같을 수없는 것입니다
- 1,2,1
- 2,3,3
- 1,1,1
- 3,2,3
C = (A!=B ? 6-A-B : (!(A-1) ? 2 : 1))
작동 하지 않는 것이 있습니까? 또한 솔루션은 시간이 많이 걸리고 실행하는 데 시간이 오래 걸릴 수 있으므로 매우 비효율적입니다. 또한, import random
바이트 크기의 카운트 ...