반응형

1.  문제

■ URL : https://www.acmicpc.net/problem/11047

 

2. 핵심요약

■ 1번째 Row, 1번째 Col : 동전의 갯수

■ 1번째 Row, 2번째 Col : 주어진 동전 가격의 합으로 만들어야할 합계 가격

■ 2번째 Row 부터 : 각 동전의 가격

1
2
3
4
5
6
7
8
9
10
11
10 4790
1
5
10
50
100
500
1000
5000
10000
50000
cs

 

 

3. 문제풀이 접근

■ 문제유형 : 탐욕(Greedy) 알고리즘

최소한의 동전 갯수만 사용하기 위해 동전 단가가 큰 것부터 써야 한다.

■ 몫 연산자와 나머지 연산자 문법을 알고 주어진 합계 가격으로부터 필요한 동전의 갯수(최소값)을 구한다.

    - 파이썬 연산자 문법 : 나눗셈의 몫(//), 나눗셈의 나머지(%)

    - 자바스크립트 연산자 문법 : 나눗셈의 몫(/), 나눗셈의 나머지(%)

 

4. 파이썬 코딩

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
isTest = True
if isTest:
    f = open("./11047.txt"'r')
    cnt, target = map(int, f.readline().split(' '))
else:
    cnt, target = map(int, input().split(' '))
 
arr = []
for i in range(1, cnt+1):
    if isTest:
        arr.append(int(f.readline()))
    else:
        arr.append(int(input()))
 
answer = 0
arr.reverse()
for item in arr:
    answer += target // item
    target = target % item
 
    if target == 0:
        break
 
print(answer)
 
cs

 

5. JavaScript 코딩

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
let isTest = true
 
let fs = require('fs');
let input;
if (isTest) {
    input = fs.readFileSync('./11047.txt').toString().split('\n');
else {
    input = fs.readFileSync('/dev/stdin').toString().split('\n');
}
 
let cnt = Number(input[0].split(' ')[0]);       // 동전의 갯수
let target = Number(input[0].split(' ')[1]);    // 목표값
 
arr = [];
for(let i = 1; i < cnt + 1; i++) {
    arr.push(Number(input[i]));
}
 
// 문제에서 동전의 가치는 이미 오름차순으로 주어짐.
answer = 0;
for(let i = arr.length - 1; i >= 0; i--) {
    answer += parseInt(target / arr[i]);
    target = target % arr[i];
 
    if (target === 0) {
        console.log(answer);
        return answer;
    }
}
cs

 

 

반응형

'알고리즘(코딩테스트)' 카테고리의 다른 글

[백준] 주유소  (0) 2024.10.05
[백준] 수들의 합  (0) 2024.10.05
[백준] 설탕 배달  (0) 2024.10.04
[백준] 읽어버린 괄호  (0) 2024.10.04
[백준] ATM  (1) 2024.10.03
반응형

1. 시험환경

    ˙ 윈도우

    ˙ 파이썬

 

2. 목적

    ˙ 윈도우 운영체제에서 파이썬을 설치한다.

 

3. 적용

    ① 파이썬 공식 사이트에 접속하여 "Downloads" 메뉴를 클릭한다.

        - https://www.python.org/

 

    ② 설치 프로그램이 다운로드 완료되면 실행한다.

 

    ③ "Add Python 3.10 to PATH"를 체크하는 것이 사용에 편리하다.

 

    ④ 설치가 진행된다.

 

4. 결과

    ˙ ③ "Add Python 3.10 to PATH"를 체크한 경우, 시스템 변수 PATH에 자동 등록 되었다.

 

    ˙ 기본 설치 경로 : C:\Users\[사용자]\AppData\Local\Programs\Python

        - python x32, x64 중 하나만 사용할 수 있다.

        - python x32를 설치한 경우, "-32"로 끝나는 폴더가 생성된다.

        - python x32를 설치한 경우, python library 사용에 제약이 있을 수 있다.

 

    ˙ CLI에서 "python"을 입력하여 동작하는지 확인한다.

 

반응형

+ Recent posts