티스토리 뷰
array = []
check = [0]*15
n , m = map(int,input().split())
def fun(cnt,be):
if cnt==m:
for i in range(0,cnt):
print(array[i],end = '')
print()
return
else:
for i in range(1,n+1):
if(i>be and check[i]!=1):
check[i] = 1
# array[cnt]=i => 이렇게 하려면 array에 원소가 있어야함.
# array = [0]*15로 0을 다 넣어줬던가 했어야함
array.insert(cnt,i)
#만약에 array에 원소가 없었다면 insert(번호,저장할값)을 이용해 넣어주기
fun(cnt+1,i)
check[i]=0
fun(0,0)
n,m (1)과 다른점은 array에 저장된 이전 값보다 더 큰 값이 와야한다는 것.
오름차순으로 정렬되어 있으니까 array에 들어간 바로 직전의 값보다 현재 들어오려고 하는 값이 더 크면 됨.
=> 이전 번호를 기억해야함, 비교해야함
before을 의미하는 be변수를 넘겨주면서 시작
//주척처리를 한 코드에서 에러가 남.
<오늘의 알게된점>
왜인지 찾아보니, IndexError: list assignment index out of range.
인덱스가 범위를 넘어섰다는데 범위지정을 해줘야했나?라고 생각해서 구글링.
알고보니, 배열에 원소가 없었다면 해당 원소를 넣을 번호에 특정 값을 넣을 수 없음.
-> 1. 배열을 0으로 초기화해서 사용할만큼의 크기를 잡아줌
array = [0]*15로 0값을 넣어줌
-> 2. array.insert(넣을위치,넣을값)을 통해서 넣어줄 수 있음
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 모듈 사용법
- CSMA/CD란?
- stack 컨테이너
- LAMBDA
- 파이썬 알아두면 유용
- 스택 파이썬
- 백트래킹(1)
- 시뮬레이션 c
- 백준 숫자놀이
- 백준 11053 파이썬
- 딥러닝입문
- 영화 리뷰 긍정 부정 분류
- 4963 섬의개수
- c++덱
- 소프트웨어공학설계
- 백준 10866
- 백준 15650 파이썬
- 코딩월드뉴스
- 11053 백준
- 13886
- 백준 4963
- 효율적인방법찾기
- CREATE ASSERTION
- 온라인프로필 만들기
- 10866 백준
- 기본 텍스트 분류
- 기사작성 대외활동
- 핀테크 트렌드
- DRF 회원관리
- mm1queue
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
글 보관함