diff --git "a/2839\353\262\210: \354\204\244\355\203\225 \353\260\260\353\213\254/README.md" "b/2839\353\262\210: \354\204\244\355\203\225 \353\260\260\353\213\254/README.md" new file mode 100644 index 0000000..60dc436 --- /dev/null +++ "b/2839\353\262\210: \354\204\244\355\203\225 \353\260\260\353\213\254/README.md" @@ -0,0 +1,29 @@ +# 2839번: 설탕 배달 - Silver IV + + + + + + + +## 문제 + +[문제 링크](https://boj.kr/2839) + +

상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다.

+ +

상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다.

+ +

상근이가 설탕을 정확하게 N킬로그램 배달해야 할 때, 봉지 몇 개를 가져가면 되는지 그 수를 구하는 프로그램을 작성하시오.

+ +## 입력 + +

첫째 줄에 N이 주어진다. (3 ≤ N ≤ 5000)

+ +## 출력 + +

상근이가 배달하는 봉지의 최소 개수를 출력한다. 만약, 정확하게 N킬로그램을 만들 수 없다면 -1을 출력한다.

+ +## 소스코드 + +[소스코드 보기](설탕%20배달.cpp) \ No newline at end of file diff --git "a/2839\353\262\210: \354\204\244\355\203\225 \353\260\260\353\213\254/\354\204\244\355\203\225 \353\260\260\353\213\254" "b/2839\353\262\210: \354\204\244\355\203\225 \353\260\260\353\213\254/\354\204\244\355\203\225 \353\260\260\353\213\254" new file mode 100755 index 0000000..747cd3d Binary files /dev/null and "b/2839\353\262\210: \354\204\244\355\203\225 \353\260\260\353\213\254/\354\204\244\355\203\225 \353\260\260\353\213\254" differ diff --git "a/2839\353\262\210: \354\204\244\355\203\225 \353\260\260\353\213\254/\354\204\244\355\203\225 \353\260\260\353\213\254.cpp" "b/2839\353\262\210: \354\204\244\355\203\225 \353\260\260\353\213\254/\354\204\244\355\203\225 \353\260\260\353\213\254.cpp" new file mode 100644 index 0000000..868c07a --- /dev/null +++ "b/2839\353\262\210: \354\204\244\355\203\225 \353\260\260\353\213\254/\354\204\244\355\203\225 \353\260\260\353\213\254.cpp" @@ -0,0 +1,38 @@ +/* ************************************************************************** */ +/* */ +/* ::: ::: ::: */ +/* Problem Number: 2839 :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: 6kitty +#+ +#+ +#+ */ +/* +#+ +#+ +#+ */ +/* https://boj.kr/2839 #+# #+# #+# */ +/* Solved: 2026/03/05 11:39:33 by 6kitty ### ### ##.kr */ +/* */ +/* ************************************************************************** */ +#include +using namespace std; + + +int solve(int a,int b){ + if(a<0){ + return -1; + } + if(a%5==0){ + b+=a/5; + return b; + } + b++; + a-=3; + return solve(a,b); +} +int main(void){ + ios::sync_with_stdio(0); + cin.tie(0); + + int n,cnt; + cin>>n; + + int ans=solve(n,0); + + cout< s; + string ans = "yes"; + + for (int i = 0; i < lineinput.size(); i++) { + char c = lineinput[i]; + + if (c == '(' || c == '[') { + s.push(c); + } + else if (c == ')') { + if (s.empty() || s.top() != '(') { + ans = "no"; + break; + } + s.pop(); + } + else if (c == ']') { + if (s.empty() || s.top() != '[') { + ans = "no"; + break; + } + s.pop(); + } + } + //stack에 남은 게 없어야 함 + if (!s.empty()) ans = "no"; + + cout << ans << '\n'; + } + return 0; } \ No newline at end of file