- toc {:toc}
๋ฌธ์
์๊ทผ์ด๋ ์์ฆ ์คํ๊ณต์ฅ์์ ์คํ์ ๋ฐฐ๋ฌํ๊ณ ์๋ค. ์๊ทผ์ด๋ ์ง๊ธ ์ฌํ๊ฐ๊ฒ์ ์คํ์ ์ ํํ๊ฒ N ํฌ๋ก๊ทธ๋จ์ ๋ฐฐ๋ฌํด์ผ ํ๋ค. ์คํ๊ณต์ฅ์์ ๋ง๋๋ ์คํ์ ๋ด์ง์ ๋ด๊ฒจ์ ธ ์๋ค. ๋ด์ง๋ 3 ํฌ๋ก๊ทธ๋จ ๋ด์ง์ 5 ํฌ๋ก๊ทธ๋จ ๋ด์ง๊ฐ ์๋ค.
์๊ทผ์ด๋ ๊ท์ฐฎ๊ธฐ ๋๋ฌธ์, ์ต๋ํ ์ ์ ๋ด์ง๋ฅผ ๋ค๊ณ ๊ฐ๋ ค๊ณ ํ๋ค. ์๋ฅผ ๋ค์ด, 18 ํฌ๋ก๊ทธ๋จ ์คํ์ ๋ฐฐ๋ฌํด์ผ ํ ๋, 3 ํฌ๋ก๊ทธ๋จ ๋ด์ง 6 ๊ฐ๋ฅผ ๊ฐ์ ธ๊ฐ๋ ๋์ง๋ง, 5 ํฌ๋ก๊ทธ๋จ 3 ๊ฐ์ 3 ํฌ๋ก๊ทธ๋จ 1 ๊ฐ๋ฅผ ๋ฐฐ๋ฌํ๋ฉด, ๋ ์ ์ ๊ฐ์์ ๋ด์ง๋ฅผ ๋ฐฐ๋ฌํ ์ ์๋ค.
์๊ทผ์ด๊ฐ ์คํ์ ์ ํํ๊ฒ N ํฌ๋ก๊ทธ๋จ ๋ฐฐ๋ฌํด์ผ ํ ๋, ๋ด์ง ๋ช ๊ฐ๋ฅผ ๊ฐ์ ธ๊ฐ๋ฉด ๋๋์ง ๊ทธ ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ N ์ด ์ฃผ์ด์ง๋ค. (3 โค N โค 5000)
์ถ๋ ฅ
์๊ทผ์ด๊ฐ ๋ฐฐ๋ฌํ๋ ๋ด์ง์ ์ต์ ๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ค. ๋ง์ฝ, ์ ํํ๊ฒ N ํฌ๋ก๊ทธ๋จ์ ๋ง๋ค ์ ์๋ค๋ฉด -1 ์ ์ถ๋ ฅํ๋ค.
์ถ์ฒ:https://www.acmicpc.net/problem/2839
ํ์ด
- ๊ฐ์ฅ ์ ์ ๋ด์ง๋ฅผ ๋ค๊ณ ๊ฐ์ผ ํ๊ธฐ ๋๋ฌธ์ 3kg ์ ๊ฐ์๊ฐ ๊ฐ์ฅ ์ ์ด์ผ ํจ.
- ์ฃผ์ด์ง ๊ฐ์ ์ผ์ ์๋ฆฌ ์์ ๋ฐ๋ผ 3kg ์ ๊ฐ์๊ฐ ์ผ์ด์ค ๋ถ๋ฅ๋๋ ๊ฒ์ ํ์ ํจ.
- ์ผ์ด์ค ๋ถ๋ฅ ๋ฐ ์์ธ์ฒ๋ฆฌ
#include <iostream>
#define ONE 1
#define TWO 2
#define THREE 3
#define FOUR 4
using namespace std;
int main()
{
int input, units, num=0, temp;
cin >> input;
units = input%10;
if(units == 8 || units == 3)
{
temp = input-3*ONE;
num += ONE;
}
else if(units == 6 || units == 1)
{
temp = input-3*TWO;
num += TWO;
}
else if(units == 9 || units == 4)
{
temp = input-3*THREE;
num += THREE;
}
else if(units == 7 || units == 2)
{
temp = input-3*FOUR;
num += FOUR;
}
else
{
temp = input;
}
if(temp < 0)
num = -1;
else
{
if(temp%5==0)
{
num += temp/5;
}
else
{
num = -1;
}
}
cout << num << endl;
return 0;
}