광규니
광규니네
광규니
전체 방문자
오늘
어제
  • 분류 전체보기 (154)
    • 알고리즘 (100)
      • 알고리즘 개념 (2)
      • 문제 풀이 (96)
    • 주절주절 (19)
      • 자격증, 활동 후기 (4)
      • 전시회 후기 (3)
      • 이모저모 (2)
      • 회고 (3)
      • 뜨럼 (7)
    • 운영체제 (9)
    • 개발 지식 (9)
      • Apple Watch (4)
      • MySQL (2)
      • Eclipse (1)
      • XCode (1)
    • 네트워크 공부 (1)
    • 데이터베이스 공부 (5)
    • Java 공부 (7)
    • TMP (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 티스토리챌린지
  • BOJ
  • 운영체제
  • DP
  • 자바
  • 오블완
  • 합주
  • 프로그래머스
  • 컴퓨터 사이언스
  • 파이썬
  • 구현
  • 애플워치 앱
  • 드린이
  • 애플워치 앱 만들기
  • OS
  • 백준
  • 다이나믹 프로그래밍
  • BFS
  • 알고리즘
  • 개념

최근 댓글

최근 글

티스토리

250x250
hELLO · Designed By 정상우.
광규니

광규니네

알고리즘/문제 풀이

[Python/파이썬 15652 백준] N과 M(4)

2021. 4. 6. 21:47
반응형

www.acmicpc.net/problem/15652

 

15652번: N과 M (4)

한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해

www.acmicpc.net

풀이

itertools 쓴거

엄청 쉽네용

import sys
from itertools import combinations_with_replacement

input=sys.stdin.readline

n,m=map(int,input().split())
lst=[i for i in range(1,n+1)]
lst=list(combinations_with_replacement(lst,m))

for i in lst:
    print(" ".join(map(str,i)))

안쓴대로 풀려는데

시간초과 나서

참고했습니다.

 

number는 n값을 안넘기도록 사용하여 1~n까지 출력하고,

selected는 배열의 인덱스로 사용했습니다.

 

import sys
from itertools import combinations_with_replacement
input=sys.stdin.readline

n,m=map(int,input().split())
lst=[0 for i in range(m)]

def go(number,selected,n,m):
    if selected==m:
        print(" ".join(map(str,lst)))
        return
    if number>n:
        return

    lst[selected]=number
    go(number,selected+1,n,m)
    lst[selected]=0
    go(number+1,selected,n,m)
go(1,0,n,m)
반응형
저작자표시

'알고리즘 > 문제 풀이' 카테고리의 다른 글

[Python/파이썬 11724 백준] 연결 요소의 개수  (0) 2021.04.09
[Python/파이썬 15665 백준] N과 M(11)  (0) 2021.04.07
[Python/파이썬 백준 1759] 암호 만들기  (0) 2021.04.03
[Python/파이썬 10819 백준] 차이를 최대로  (0) 2021.04.03
[Python/파이썬 15684 백준] 사다리 조작  (0) 2021.03.28
    '알고리즘/문제 풀이' 카테고리의 다른 글
    • [Python/파이썬 11724 백준] 연결 요소의 개수
    • [Python/파이썬 15665 백준] N과 M(11)
    • [Python/파이썬 백준 1759] 암호 만들기
    • [Python/파이썬 10819 백준] 차이를 최대로
    광규니
    광규니
    공부 및 일상 올리기~

    티스토리툴바