일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 다시풀기
- MSBuild
- LEVEL2
- 대학원
- git
- 파이썬
- 휴학
- level1
- java
- D3
- Github
- level3
- 컨트리뷰톤
- build
- 대학원일기
- SQL
- 자바
- WebOS
- 컴퓨터비전
- 프로그래머스
- 어렵다
- py
- Python
- SWEA
- Matrix Factorization
- 내휴학생활중의아주큰일
- level4
- androidstudio
- BFS
- 안드로이드스튜디오
Archives
- Today
- Total
bit가 눈 앞에서 왔다갔다
Py) SWEA 14361 숫자가 같은 배수 본문
** permutation을 잊지 말자 **
1차: 11분 (고민하다가 시간이 너무 늦어서 답을 보기로..)
0. 입출력
1. 김예고리즘
아주 잠깐 몇 중 for문을 돌려야하나 생각했다. -> 순열 개념은 생각했으나 그게 순열이라고 바로 떠올리지 못함.
2. Solution
2-1. 사용 자료구조 및 알고리즘: x
2-1-1. 핵심 아이디어: 순열 Permutations
2-2. 로직
1) 주어진 수를 한 글자씩 입력 받는다
2) 순열을 이용해 한가지 경우씩 비교
3) 원래 값보다 크고, 원래 값으로 나눴을때 딱 떨어진다면 possible
4) 그렇지 않다면 impossible
2-3. 코드
from itertools import permutations
T = int(input())
for i in range(1, T+1):
data = list(map(int, input()))
original = int(''.join(map(str, data)))
result = 'impossible'
for value in permutations(data, len(data)):
if int(''.join(map(str, value))) > original:
if int(''.join(map(str, value))) % original:
result = 'possible'
break
print('#%d %s' %(i, result))
3. 피드백
from itertools import permutations 의 permutation을 잊지 말자..
for value in permutations(data, len(data)):
내일 안늦게 빨리 자자..
반응형
'Algorithm > Prob' 카테고리의 다른 글
Py) SWEA 14692 통나무 자르기 (0) | 2022.11.11 |
---|---|
Py) SWEA 13732 정사각형 판정 (1) | 2022.11.09 |
Py) SWEA 14178 1차원 정원 (0) | 2022.11.05 |
Py) SWEA 2007 패턴 마디의 길이 (0) | 2022.11.03 |
Py) SWEA 1859 백만장자 프로젝트 (1) | 2022.11.02 |
Comments