@Eeap
velog
@Eeap
전체 방문자
오늘
어제
  • 전체 (168)
    • osam (1)
    • Cloud (21)
      • Docker (2)
      • AWS (13)
    • AI & Data (7)
    • Algorithm (76)
      • Baekjoon (75)
      • Codeforces (1)
    • Language (18)
      • Java (18)
    • Back-end (17)
      • Spring (3)
      • JSP & Servlet (12)
      • Go (2)
    • 일상 (4)
    • 기타 (8)
    • git (1)
    • Infra (9)
      • Apache Kafka (5)
      • Kubernetes (4)
      • 기타 (0)

블로그 메뉴

  • 홈
  • 태그

공지사항

인기 글

태그

  • Agent
  • 심폴릭링크
  • bedrock api
  • 오블완
  • 티스토리챌린지
  • invokemodel api
  • AWS CodeArtifact
  • bedrock
  • sagemaker unified studio
  • flink
  • SageMaker
  • AWS CodeCatalyst
  • AWS CodeStar
  • knowledge bases
  • converse api
  • bedrock agent
  • 인터페이스
  • java
  • Python
  • CLASS

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
@Eeap

velog

Algorithm/Baekjoon

Python 6603번 로또

2022. 7. 29. 21:11
반응형

https://www.acmicpc.net/problem/6603

 

6603번: 로또

입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있다. 첫 번째 수는 k (6 < k < 13)이고, 다음 k개 수는 집합 S에 포함되는 수이다. S의 원소는 오름차순으로

www.acmicpc.net

 

이 문제는 전에 풀었던 문제처럼 브루트 포스의 재귀 방식을 이용해서 풀었다.

visited를 통해 그 수를 방문했는지 확인하였고 i라는 인덱스를 통해 어디서부터 방문해야할지 결정했다(테스트케이스가 오름차순으로 되어있고 중복이 없기 때문).

항상 재귀 후에는 전에 사용했던 res값이나 visited를 초기화해주었다.

import sys

input= sys.stdin.readline
def recur(visited,i,cnt,res):
    if cnt==6:
        print(" ".join(map(str,res)))
        return
    for idx in range(i,k+1):
        if not visited[idx]:
            visited[idx]=1
            res.append(ary[idx])
            recur(visited,idx+1,cnt+1,res)
            res.pop()
            visited[idx]=0
while True:
    ary = list(map(int,input().split()))
    if ary[0]==0:
        break
    k=ary[0]
    visited=[0]*(k+1)
    recur(visited,1,0,[])
    print()
반응형
저작자표시 (새창열림)

'Algorithm > Baekjoon' 카테고리의 다른 글

Python 2529번 부등호  (0) 2022.07.31
Python 1182번 부분수열의 합  (0) 2022.07.31
Python 1759번 암호 만들기  (0) 2022.07.28
2096번 파이썬  (0) 2022.05.04
1309번 파이썬  (0) 2022.04.13
    'Algorithm/Baekjoon' 카테고리의 다른 글
    • Python 2529번 부등호
    • Python 1182번 부분수열의 합
    • Python 1759번 암호 만들기
    • 2096번 파이썬
    @Eeap
    @Eeap

    티스토리툴바