• 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

ํ’€์ด

  1. ๊ฐ€์žฅ ์ ์€ ๋ด‰์ง€๋ฅผ ๋“ค๊ณ ๊ฐ€์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— 3kg ์˜ ๊ฐœ์ˆ˜๊ฐ€ ๊ฐ€์žฅ ์ ์–ด์•ผ ํ•จ.
  2. ์ฃผ์–ด์ง„ ๊ฐ’์˜ ์ผ์˜ ์ž๋ฆฌ ์ˆ˜์— ๋”ฐ๋ผ 3kg ์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ผ€์ด์Šค ๋ถ„๋ฅ˜๋˜๋Š” ๊ฒƒ์„ ํŒŒ์•…ํ•จ.
  3. ์ผ€์ด์Šค ๋ถ„๋ฅ˜ ๋ฐ ์˜ˆ์™ธ์ฒ˜๋ฆฌ
#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;
}