동물의 아이디와 이름 (SQL)

0. 출처

1. 기록

  • 22/04/01 (금)

2. 풀이

(1) 아이디어

sample

(2) 코드

SELECT ANIMAL_ID, NAME 
FROM ANIMAL_INS 
ORDER BY ANIMAL_ID ASC

(3) 정리

(4) 참고

어린 동물 찾기 (SQL)

0. 출처

1. 기록

  • 22/04/01 (금)

2. 풀이

(1) 아이디어

sample

(2) 코드

SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
WHERE INTAKE_CONDITION != 'Aged'

(3) 정리

(4) 참고

참고 풀이

아픈 동물 찾기 (SQL)

0. 출처

1. 기록

  • 22/04/01 (금)

2. 풀이

(1) 아이디어

sample

(2) 코드

SELECT ANIMAL_ID, NAME FROM ANIMAL_INS
WHERE INTAKE_CONDITION = 'Sick'

(3) 정리

(4) 참고

참고 자료

역순 정렬하기 (SQL)

0. 출처

1. 기록

  • 22/04/01 (금)

2. 풀이

(1) 아이디어

sample

(2) 코드

SELECT NAME, DATETIME FROM ANIMAL_INS 
ORDER BY ANIMAL_ID DESC;

(3) 정리

(4) 참고

모든 레코드 조회하기 (SQL)

0. 출처

1. 기록

  • 22/04/01 (금)

2. 풀이

(1) 아이디어

sample

(2) 코드

SELECT * FROM ANIMAL_INS
ORDER BY ANIMAL_ID

(3) 정리

(4) 참고

15656_N과 M(7) (Python)

0. 출처

1. 기록

  • 22/03/31 (목)

2. 풀이

(1) 아이디어, 시간복잡도, 자료구조

1. 아이디어
>> 주어진 수를 정렬하여 중복 순열을 구하는 문제

2. 시간복잡도
>>

3. 자료구조
>>

(2) 예제 입력, 예제 출력

- 예제 입력 1 -
3 1
4 5 2

- 예제 출력 1 -
2
4
5

- 예제 입력 2 -
4 2
9 8 7 1

- 예제 출력 2 -
1 1
1 7
1 8
1 9
7 1
7 7
7 8
7 9
8 1
8 7
8 8
8 9
9 1
9 7
9 8
9 9

(3) 코드

n, m = map(int, input().split())
nums = list(map(int, input().split()))

nums = sorted(nums)

stack = []

def recursive_dfs():
    if len(stack) == m:
        print(' '.join(map(str, stack)))
        return

    for i in range(0, len(nums)):
        stack.append(nums[i])
        recursive_dfs()
        stack.pop()

recursive_dfs()

(4) 정리

(5) 참고

15655_N과 M(6) (Python)

0. 출처

1. 기록

  • 22/03/31 (목)

2. 풀이

(1) 아이디어, 시간복잡도, 자료구조

1. 아이디어
>> 주어진 수를 기준으로 정렬하여 조합을 구하는 문제

2. 시간복잡도
>>

3. 자료구조
>>

(2) 예제 입력, 예제 출력

- 예제 입력 1 -
3 1
4 5 2

- 예제 출력 1 -
2
4
5

- 예제 입력 2 -
4 2
9 8 7 1

- 예제 출력 2 -
1 7
1 8
1 9
7 8
7 9
8 9

(3) 코드

n, m = map(int, input().split())
nums = list(map(int, input().split()))

# ex_nums = [(map(int, input().split()))]
# 이렇게 입력하면 객체 형태로 나온다.
# [<map object at 0x000001F1DD420E80>]

nums = sorted(nums)

stack = []

def recursive_dfs(start):
    if len(stack) == 2:
        print(' '.join(map(str, stack)))
        return

    for i in range(start, len(nums)):
        if nums[i] in stack:
            continue
        else:
            stack.append(nums[i])
            recursive_dfs(i)
            stack.pop()

recursive_dfs(0)

(4) 정리

(5) 참고

15654_N과 M(5) (Python)

0. 출처

1. 기록

  • 22/03/31 (목)

2. 풀이

(1) 아이디어, 시간복잡도, 자료구조

1. 아이디어
>> 주어진 수를 기준으로 정렬 후 순열을 구하는 문제

2. 시간복잡도
>>

3. 자료구조
>>

(2) 예제 입력, 예제 출력

- 예제 입력 1 -
3 1
4 5 2

- 예제 출력 1 -
2
4
5

- 예제 입력 2 -
4 2
9 8 7 1

- 예제 출력 2 -
1 7
1 8
1 9
7 1
7 8
7 9
8 1
8 7
8 9
9 1
9 7
9 8

(3) 코드

import sys

n, m = map(int, input().split())
nums = list(map(int, input().split()))      # 여러개를 띄어쓰기를 사이에 두고 입력할 때 리스트에 담는 방법

nums = sorted(nums)

stack = []

def recursive_dfs():
    if len(stack) == m:
        print(' '.join(map(str, stack)))

    for i in nums:
        if i in stack:
            continue
        else:
            stack.append(i)
            recursive_dfs()
            stack.pop()

recursive_dfs()

(4) 정리

(5) 참고

'코테기록 > 백준' 카테고리의 다른 글

[백준] 15656_N과 M(7) (Python)  (0) 2022.03.31
[백준] 15655_N과 M(6) (Python)  (0) 2022.03.31
[백준] 15652_N과 M(4) (Python)  (0) 2022.03.31
[백준] 15651_N과 M(3) (Python)  (0) 2022.03.31
[백준] 15650_N과 M(2) (Python)  (0) 2022.03.30

15652_N과 M(4) (Python)

0. 출처

1. 기록

  • 22/03/31 (목)

2. 풀이

(1) 아이디어, 시간복잡도, 자료구조

1. 아이디어
>> 중복 조합 문제

2. 시간복잡도
>>

3. 자료구조
>>

(2) 예제 입력, 예제 출력

- 예제 입력 1 -
3 1

- 예제 출력 1 -
1
2
3

- 예제 입력 2 -
4 2

- 예제 출력 2 -
1 1
1 2
1 3
1 4
2 2
2 3
2 4
3 3
3 4
4 4

(3) 코드

n, m = map(int, input().split())

stack = []

def recursive_dfs(start):
    if len(stack) == m:
        print(' '.join(map(str, stack)))
        return

    for i in range(start, n+1):
        stack.append(i)
        recursive_dfs(i)
        stack.pop()

recursive_dfs(1)

(4) 정리

(5) 참고

'코테기록 > 백준' 카테고리의 다른 글

[백준] 15655_N과 M(6) (Python)  (0) 2022.03.31
[백준] 15654_N과 M(5) (Python)  (0) 2022.03.31
[백준] 15651_N과 M(3) (Python)  (0) 2022.03.31
[백준] 15650_N과 M(2) (Python)  (0) 2022.03.30
[백준] 15649_N과 M(1) (Python)  (0) 2022.03.30

15651_N과 M(3) (Python)

0. 출처

1. 기록

  • 22/03/31 (목)

2. 풀이

(1) 아이디어, 시간복잡도, 자료구조

1. 아이디어
>> 중복 순열 문제

2. 시간복잡도
>>

3. 자료구조
>>

(2) 예제 입력, 예제 출력

- 예제 입력 1 -
3 1

- 예제 출력 1 -
1
2
3

- 예제 입력 2 -
4 2

- 예제 출력 2 -
1 1
1 2
1 3
1 4
2 1
2 2
2 3
2 4
3 1
3 2
3 3
3 4
4 1
4 2
4 3
4 4

(3) 코드

n, m = map(int, input().split())

stack = []

def recursive_dfs():
    if len(stack) == m:
        print(' '.join(map(str, stack)))
        return

    for i in range(1, n+1):
        stack.append(i)
        recursive_dfs()
        stack.pop()

recursive_dfs()

(4) 정리

앞의 조합, 순열에 관한 문제를 풀 수 있으면 어렵지 않게 풀 수 있는 문제였습니다.

(5) 참고

'코테기록 > 백준' 카테고리의 다른 글

[백준] 15654_N과 M(5) (Python)  (0) 2022.03.31
[백준] 15652_N과 M(4) (Python)  (0) 2022.03.31
[백준] 15650_N과 M(2) (Python)  (0) 2022.03.30
[백준] 15649_N과 M(1) (Python)  (0) 2022.03.30
[백준] 9342_염색체 (Python)  (0) 2022.03.29

+ Recent posts