๋ฌธ์
https://www.acmicpc.net/problem/1913
์ค๋ช
์ค๋๋ฌธ์ ๋ ๋ฌํฝ์ด๋ค.
Source : GIPHY
์๋ ๊ทธ๊ฑฐ ๋ง๊ณ
๋ฌธ์ ๋ฅผ ์์ฝํ์๋ฉด
์ฌ์ฉ์๋ก ๋ถํฐ ์
๋ ฅ ๋๊ฐ๊ฐ ์ฃผ์ด์ง๋ฉฐ ์ฒซ๋ฒ์จฐ ์ซ์ N์ ๋ฌด์กฐ๊ฑด ํ์๋ง ์ฃผ์ด์ง๋ค๋ ํ์ ์กฐ๊ฑด์ด ์ฃผ์ ์ก์ผ๋ฉฐ, ์ด๋ฅผ ์ด์ฉํด N*Nํ๋ฅผ ๋ง๋ค๊ณ ๊ทธ ์ค์์์๋ถํฐ 1๋ก ์์ํ์ฌ ํ์ค์ค๋ชจ์์ผ๋ก ๋์๋์ค๋ฉด์ ์ซ์๊ฐ ๋์ค๋๋ก ํ๋ฅผ ์์ฑํ๋๋ก ํด์ผํ๊ณ ๋๋ฒ์งธ ์ซ์๋ ๊ทธ ํ ์์์ ์ฐพ๊ณ ์ ํ๋ ์ซ์๋ก ์ฐพ๊ณ ์ ํ๋ ์ซ์์ ํ๊ณผ ์ด(์ขํ๊ฐ)์ ์ถ๋ ฅํ๋๋ก ํ๋ฉด ๋๋ ๋ฌธ์ ์๋ค.
์ผ๋จ ์ด๋ฌธ์ ๋ฅผ ๋ณด๊ณ ๋งจ์ฒ์์ ๋ค์๋ ์๊ฐ์ ๋ฌํฝ์ด๋ชจ์์ผ๋ก ์ถ๋ ฅํ๋ ๋ฒฝ๋ง ๋์ด์ ๋ค๋ฉด ๋๋จธ์ง๋ ์์ํ๊ฒ ํ๋ฆด๊ฑฐ๋ผ๊ณ ํ๋จํ์๋ค. ๊ทธ๋ฌ๋ ์ฝ๋ฉ์ ํ๋ฉด์ ๋๋๊ฑด ๊ทธ.๋.์ ๋ฌํฝ์ด๋ฅผ ์ถ๋ ฅํ๋ ์๊ณ ๋ฆฌ์ฆ์์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์๋ค.
๋จผ์ ๋น ๋ฅธ ์ค๋ช ์ ์ํด์ ํ์์ค๋ฅผ ๋ฐ๋ก ๊ณต๊ฐํ๋๋ก ํ๊ฒ ๋ค.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h> // ๊ธฐ๋ณธ ์
์ถ๋ ฅ์ ์ํ ํค๋
#include <stdlib.h> // ์ด ์ฝ๋์์๋ abs ํจ์๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํ ํค๋
#include <math.h> // round ํจ์๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํ ํค๋
int path[2],found[2]; // path = ํ์ฌ ์ขํ, found = ์ฐพ์ ์์ ์ขํ
int snail[999][999]; // ๋ฌํฝ์ด ๋ชจ์ ํ(๋ฐฐ์ด) -- [ํ] ๊ณผ [์ด]
int n, search, max_size, center; // n = ํ ํ๋ณ ๊ธธ์ด, search = ์ฐพ๊ณ ์ ํ๋ ์, max_size = ๋ฌํฝ์ด ๋ ์ซ์, center = ์ค์ ์ขํ(์
int num = 1; // 1์ฉ ์ฆ๊ฐ์ํค๋ฉฐ ์ซ์๋ฅผ ์
๋ ฅํ๊ธฐ ์ํ ์
int floor_ = 1; // ์ค์ฌ์ ๊ธฐ์ค์ผ๋ก ๋จ์ด์ ธ ์๋ ๊ธธ์ด
enum arrow{Up=0, Right, Down, Left}; // Up = 0, Right = 1, Down = 2, Left = 3
enum arrow direction = Up; // ์ฒ์ ์์ : Up
int main()
{
//์ฌ์ฉ์๋ก ๋ถํฐ ์
๋ ฅ๋ฐ๊ธฐ
scanf("%d", &n);
scanf("%d", &search);
max_size = n * n; // ๋ฌํฝ์ด ๋ ์ซ์ = n^2
center = (n / 2); // ์ค์์ขํ : n/2(์์์ ์๋ต)
path[0] = path[1] = center; // ์์์ ์ ์ค์ ์ขํ๋ก ์ค์
while (num <= max_size) //๋ฌํฝ์ด ๋ง์ง๋ง ์ซ์๊ฐ ์
๋ ฅ๋์ด์ง๋๊น์ง ์
๋ ฅ
{
if (num == (int)(round(pow(((2 * floor_) + 1), 2)))) // ํ์ธต์ ์
๋ ฅ์ด ๋๋๋์ ์ ๋๋ฌ(์ : 9,25,...
direction = Up; // ์๋ก ๊ฐ๋ ๋ฐฉํฅ ์ ์งํ์ฌ ๋ค์ ์ธต์ผ๋ก ์ด๋ํ๋๋ก ํ๊ธฐ
else if (num == (int)(round(pow(((2 * floor_) + 1), 2))) + 1) //์ธต์ ๋๋ถ๋ถ์ด ์๋๋ผ ๋๋ถ๋ถ ๊ทธ ๋ค์ ์ ์ด๋ฉด
{
floor_++; // ์ธต์ ๋ณ์๋ฅผ 1 ์ฆ๊ฐ
direction = Right; // ๋ค์ ๋ฐฉํฅ์ ์ค๋ฅธ์ชฝ์ผ๋ก ํ๊ธฐ
}
// ์ด ์ดํ๋ถํฐ์ ์กฐ๊ฑด๋ฌธ์ ๊ฐ ๋ชจ์๋ฆฌ ์ ์ ๋ด์ฐฉํ์๋ ๋ฐฉํฅ์ ๋ฐ๊ฟ์ฃผ๊ธฐ ์ํ ์์ค
else if (abs(center - path[0]) == floor_ && direction == Up) //ํ์ฌ ๊ฐ์์ธต์์ ๋ ์๋ก ๋ชป๋์๊ฐ๋ ์ํฉ
direction = Right; //์ค๋ฅธ์ชฝ์ผ๋ก ๊บฝ๊ธฐ
else if (abs(center - path[0]) == floor_ && abs(center - path[1]) == floor_ && direction == Right) // ๊ฐ์์ธต์์ ๋์ด์ ์ค๋ฅธ์ชฝ์ผ๋ก ๋ชป๊ฐ๋ ์ํฉ
direction = Down; //์๋ซ์ชฝ์ผ๋ก ๊บฝ๊ธฐ
else if (abs(center - path[0]) == floor_ && direction == Down) // ๋์ด์ ์๋ซ์ชฝ์ผ๋ก ๋ชป๊ฐ๋ ์ํฉ
direction = Left; //์ผ์ชฝ์ผ๋ก ๊บฝ๊ธฐ
else if (abs(center - path[0]) == floor_ && abs(center - path[1]) == floor_ && direction == Left) // ๋์ด์ ์ผ์ชฝ์ผ๋ก ๋ชป๊ฐ๋ ์ํฉ
direction = Up; // ์์ชฝ์ผ๋ก ๊บฝ๊ธฐ
snail[path[0]][path[1]] = num; // ๋ฌํญ์ด ๋ณ์์ ์ซ์ ์
๋ ฅ
//ํน์ ์ฐพ๊ณ ์ ํ๋ ์ซ์๊ฐ ๋ฐ๊ฒฌ๋์๋ค๋ฉด found ๋ณ์์ ํ๊ณผ, ์ด ์ซ์๊ฐ ์ ์ฅํ๊ธฐ
found[0] = num == search ? path[0] + 1 : found[0];
found[1] = num == search ? path[1] + 1 : found[1];
//์ขํ๋ฅผ ์ด๋์ํค๊ธฐ ์ํ ์กฐ๊ฑด๋ฌธ
switch (direction)
{
case Up: //๋ฐฉํฅ์ด ์์ชฝ์ผ๋
path[0]--;
break;
case Right: //๋ฐฉํฅ์ด ์ค๋ฅธ์ชฝ์ผ๋
path[1]++;
break;
case Down: //๋ฐฉํฅ์ด ์๋ซ์ชฝ์ผ๋
path[0]++;
break;
case Left: //๋ฐฉํฅ์ด ์ผ์ชฝ์ผ๋
path[1]--;
break;
}
num++; // ๋ค์์ซ์๋ฅผ ์
๋ ฅํ๊ธฐ ์ํด num ๋ณ์ 1 ์ฆ๊ฐ
}
for (int i = 0; i < n; i++) //๋ฌํฝ์ด ๋ณ์๊ฐ ์์ฑ๋ ํ ๋ฌํฝ์ด ๋ณ์๋ฅผ ๋ชจ๋ ์ถ๋ ฅํ๊ธฐ ์ํ ์ด์ค ๋ฐ๋ณต๋ฌธ
{
for (int j = 0; j < n; j++)
printf("%d ", snail[i][j]);
printf("\n");
}
printf("%d %d", found[0], found[1]); // ์ฐพ์ ์ซ์๊ฐ ์๋ ์ขํ ํ์
}
์์ค์ ๋ํ ์ค๋ช ์ ์์ ์ ํ ์ฃผ์์ ๋๋ก ์ด๋์ ๋ ์ค๋ช ์ด ๋ ๊ฒ ๊ฐ๊ณ ์ด ์ดํ๋ถํฐ๋ ์ด ์์ค๋ฅผ ๊ทธ๋ฆผ์ผ๋ก ์ค๋ช ํ๋ ํธ์ด ์ข์ ๊ฒ ๊ฐ๋ค.
๋จผ์ ๊ทธ๋ฆผ์ผ๋ก ์ค๋ช ์ ์์ํ๊ธฐ ์ ์ ์ฌ์ด ์ค๋ช ์ ์ํด ์ฝ๋๋ฅผ ํ ๋ง์ ๋ด์ด ๋ฒํธ๋ฅผ ๋งค๊ฒจ ๋ณด๋๋ก ํด๋ณด๊ฒ ๋ค.
1๏ธโฃ
์ ์ ๋ก ๋ถํฐ ์ ๋ ฅ๋ฐ๊ธฐ + ์ต๋ ์ฌ์ด์ฆ์ ์ค์ ์ขํ๊ฐ ์ค์
scanf("%d", &n);
scanf("%d", &search);
max_size = n * n; // ๋ฌํฝ์ด ๋ ์ซ์ = n^2
center = (n / 2); // ์ค์์ขํ : n/2(์์์ ์๋ต)
path[0] = path[1] = center; // ์์์ ์ ์ค์ ์ขํ๋ก ์ค์
2๏ธโฃ
ํ ์ธต์ ๋๋ถ๋ถ์ ๋๋ฌํ์์๋ ๋ค์์ธต์ผ๋ก ๋์ด๊ฐ๋๋ก ๋ฐฉํฅ ์ค์ + ๋ค์์ธต์ ์ฒซ ๋ถ๋ถ์ ๋๋ฌํ์์๋ ๋ค์ ๊ทธ์ธต์ ์ํํ๋๋ก ๋ฐฉํฅ ์ค์
if (num == (int)(round(pow(((2 * floor_) + 1), 2)))) // ํ์ธต์ ์
๋ ฅ์ด ๋๋๋์ ์ ๋๋ฌ(์ : 9,25,...
direction = Up; // ์๋ก ๊ฐ๋ ๋ฐฉํฅ ์ ์งํ์ฌ ๋ค์ ์ธต์ผ๋ก ์ด๋ํ๋๋ก ํ๊ธฐ
else if (num == (int)(round(pow(((2 * floor_) + 1), 2))) + 1) //์ธต์ ๋๋ถ๋ถ์ด ์๋๋ผ ๋๋ถ๋ถ ๊ทธ ๋ค์ ์ ์ด๋ฉด
{
floor_++; // ์ธต์ ๋ณ์๋ฅผ 1 ์ฆ๊ฐ
direction = Right; // ๋ค์ ๋ฐฉํฅ์ ์ค๋ฅธ์ชฝ์ผ๋ก ํ๊ธฐ
}
3๏ธโฃ
๋ฌํฝ์ด ๋ณ์์ ์ซ์ ์ ๊ธฐ
snail[path[0]][path[1]] = num; // ๋ฌํญ์ด ๋ณ์์ ์ซ์ ์
๋ ฅ
4๏ธโฃ
ํ์ฌ ์ขํ์์ ์ฐพ๊ณ ์ ํ๋ ์ซ์ ๊ฒ์
//ํน์ ์ฐพ๊ณ ์ ํ๋ ์ซ์๊ฐ ๋ฐ๊ฒฌ๋์๋ค๋ฉด found ๋ณ์์ ํ๊ณผ, ์ด ์ซ์๊ฐ ์ ์ฅํ๊ธฐ
found[0] = num == search ? path[0] + 1 : found[0];
found[1] = num == search ? path[1] + 1 : found[1];
5๏ธโฃ
๋ฐฉํฅ์ ํ์ด์ผํ๋ ์ง์ ์ธ์ง ๊ฒ์ฌํํ ๋ฐฉํฅ ๋ณ๊ฒฝ
... //
else if (abs(center - path[0]) == floor_ && direction == Up) //ํ์ฌ ๊ฐ์์ธต์์ ๋ ์๋ก ๋ชป๋์๊ฐ๋ ์ํฉ
direction = Right; //์ค๋ฅธ์ชฝ์ผ๋ก ๊บฝ๊ธฐ
else if (abs(center - path[0]) == floor_ && abs(center - path[1]) == floor_ && direction == Right) // ๊ฐ์์ธต์์ ๋์ด์ ์ค๋ฅธ์ชฝ์ผ๋ก ๋ชป๊ฐ๋ ์ํฉ
direction = Down; //์๋ซ์ชฝ์ผ๋ก ๊บฝ๊ธฐ
else if (abs(center - path[0]) == floor_ && direction == Down) // ๋์ด์ ์๋ซ์ชฝ์ผ๋ก ๋ชป๊ฐ๋ ์ํฉ
direction = Left; //์ผ์ชฝ์ผ๋ก ๊บฝ๊ธฐ
else if (abs(center - path[0]) == floor_ && abs(center - path[1]) == floor_ && direction == Left) // ๋์ด์ ์ผ์ชฝ์ผ๋ก ๋ชป๊ฐ๋ ์ํฉ
direction = Up; // ์์ชฝ์ผ๋ก ๊บฝ๊ธฐ
...
6๏ธโฃ
๋ฐฉํฅ ํ์ธํ ์ขํ๋ฅผ ์ด๋์ํด
...
//์ขํ๋ฅผ ์ด๋์ํค๊ธฐ ์ํ ์กฐ๊ฑด๋ฌธ
switch (direction)
{
case Up: //๋ฐฉํฅ์ด ์์ชฝ์ผ๋
path[0]--;
break;
case Right: //๋ฐฉํฅ์ด ์ค๋ฅธ์ชฝ์ผ๋
path[1]++;
break;
case Down: //๋ฐฉํฅ์ด ์๋ซ์ชฝ์ผ๋
path[0]++;
break;
case Left: //๋ฐฉํฅ์ด ์ผ์ชฝ์ผ๋
path[1]--;
break;
}
num++; // ๋ค์์ซ์๋ฅผ ์
๋ ฅํ๊ธฐ ์ํด num ๋ณ์ 1 ์ฆ๊ฐ
...
์ด๋ก์ ์ซ์๋ ๊ณผ์ ์ ์์๋ฅผ ์๋ฏธํ๋ค.
์ ๋ฐ์ ์ธ ๊ณผ์ ์ ์ ๊ทธ๋ฆผ์ ํตํด ์ด๋์ ๋ ์ค๋ช ๋ ์ ์์ ๋ฏ ํ๋ค.
์๊ณ ๋ฆฌ์ฆ์ ์ค๋ช ์ ์ด๋ ๊ฒ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํ๋ค๊ณ ํด๋ ์์ค์ฝ๋์์ ์ ๋ํ ๋์ ๋๋ ๋ถ๋ถ์ด ์์๊ฑฐ๋ค.
if (num == (int)(round(pow(((2 * floor_) + 1), 2)))) // ํ์ธต์ ์
๋ ฅ์ด ๋๋๋์ ์ ๋๋ฌ(์ : 9,25,...
direction = Up; // ์๋ก ๊ฐ๋ ๋ฐฉํฅ ์ ์งํ์ฌ ๋ค์ ์ธต์ผ๋ก ์ด๋ํ๋๋ก ํ๊ธฐ
else if (num == (int)(round(pow(((2 * floor_) + 1), 2))) + 1) //์ธต์ ๋๋ถ๋ถ์ด ์๋๋ผ ๋๋ถ๋ถ ๊ทธ ๋ค์ ์ ์ด๋ฉด
{
floor_++; // ์ธต์ ๋ณ์๋ฅผ 1 ์ฆ๊ฐ
direction = Right; // ๋ค์ ๋ฐฉํฅ์ ์ค๋ฅธ์ชฝ์ผ๋ก ํ๊ธฐ
}
์ฌ๊ธฐ์ ์ฌ์ฉ๋ round() ํจ์๋ค. roundํจ์๋ ์ด๋ฆ์์๋ ๋ณผ ์ ์๋ฏ ๋ฐ์ฌ๋ฆผ ํจ์์ด๋ค. ๊ทธ๋ฐ๋ฐ ์ฌ๊ธฐ์
pow(((2 * floor_) + 1), 2))) ๋ ๊ฐ์ธต์ ๋๋๋ ์ ์ ์ซ์๋ฅผ ๊ตฌํ๊ธฐ ์ํ ๊ณ์ฐ์์ด๊ณ pow()ํจ์๋ power์ ์ฝ์ด๋ก ์ด๋ค์์ ์ ๊ณฑ์น๊ฐ์ ๊ตฌํ ๋ ์ฌ์ฉ๋๋ ํจ์๋ค. ๊ทธ๋ฐ๋ฐ ์ด ์์ ๋ฐ์ฌ๋ฆผ ํจ์๋ก ๊ฐ์ผ์ด์ ๊ฐ ๋ฌด์์ผ๊น?
์ด๋ฒ์ ์์ ๊ฐ์ ์ํ์ ์ธ ํจ์์ ๋ํด์ ๊ตฌ๊ธ๋ง์ ํ๋ ๋์ค pow ํจ์์ ๊ฒฐ๊ณผ ๊ฐ์ด ์ผ๋ถ ์ปดํ์ผ๋ฌ์์๋ ์ฐ๋ฆฌ๊ฐ ์ํ๋ ๋ต์ด ์๋์ฌ ์ ๋ ์๋ค๋ ๊ฒ์ ์๊ฒ๋์๋ค. ๊ตฌ๊ธ๋ง์ ํด์ ๋์จ ๋ธ๋ก๊ทธ์์ ๋์จ ๊ทธ ์ปดํ์ผ๋ฌ์ ์๋ก ์๋์ฐ ๋ฒ์ MinGw๋ฅผ ์๋ก ๋ค์๋ค. (์ฐธ๊ณ ๋ก pow์ ๊ฒฐ๊ณผ๊ฐ์ Double ํ์ผ๋ก ๋์จ๋ค.)
ํด๋น ์ปดํ์ผ๋ฌ์์ 10.0 ^ 2.0 ์ ํ ๋ 100.00์ด ์๋ ํน์ ์ํฉ์์ 99๊ฐ ๋์ค๋ ๊ฒฝ์ฐ๋ฅผ ๋ชฉ๊ฒฉํ๊ฒ ๋๋ค.
์ด๋ MinGW์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ตฌํ์ ํ์ ์ด๋ผ๊ณ ๋ณด์ฌ์ง๋ค๊ณ ํ๋ค. ๋ถ๋์์์ ์ค์ฐจ๋ก ์ธํด์ ๋ฐ์๋๋ ๊ฒฐ๊ณผ๋ฌผ์ด๊ธด ํ๋ 100์ด๋ผ๊ณ ์ ์์ ์ผ๋ก ์ถ๋ ฅํ ์ปดํ์ผ๋ฌ์ ๊ฒฝ์ฐ ๋ชจ๋ ์ปดํ์ผ๋ฌ๊ฐ ๊ทธ ์ค์ฐจ๋ฅผ ์ธ์งํ๊ณ ๋ฐ๋ก ๋ณด์ ์์ ์ ๊ฑฐ์น๊ณ ์ถ๋ ฅํ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ด๋ค.
๋ฐ๋ผ์ ์ปดํ์ผ๋ฌ์ ๋ฐ๋ผ์ ๊ฐ์ด ๋ฌ๋ผ์ง๋ ์ด๋ฌํ ํ์์ ๋ฐฉ์งํ๊ธฐ ์ํด์ ๋ฐ์ฌ๋ฆผ ํจ์๋ก ๊ฐ์ธ ์ค์ฐจ๋ฅผ ์์๋ ค๊ณ ํ๊ฒ์ด๋ค.
... //
else if (abs(center - path[0]) == floor_ && direction == Up) //ํ์ฌ ๊ฐ์์ธต์์ ๋ ์๋ก ๋ชป๋์๊ฐ๋ ์ํฉ
direction = Right; //์ค๋ฅธ์ชฝ์ผ๋ก ๊บฝ๊ธฐ
else if (abs(center - path[0]) == floor_ && abs(center - path[1]) == floor_ && direction == Right) // ๊ฐ์์ธต์์ ๋์ด์ ์ค๋ฅธ์ชฝ์ผ๋ก ๋ชป๊ฐ๋ ์ํฉ
direction = Down; //์๋ซ์ชฝ์ผ๋ก ๊บฝ๊ธฐ
else if (abs(center - path[0]) == floor_ && direction == Down) // ๋์ด์ ์๋ซ์ชฝ์ผ๋ก ๋ชป๊ฐ๋ ์ํฉ
direction = Left; //์ผ์ชฝ์ผ๋ก ๊บฝ๊ธฐ
else if (abs(center - path[0]) == floor_ && abs(center - path[1]) == floor_ && direction == Left) // ๋์ด์ ์ผ์ชฝ์ผ๋ก ๋ชป๊ฐ๋ ์ํฉ
direction = Up; // ์์ชฝ์ผ๋ก ๊บฝ๊ธฐ
...
๊ทธ๋ค์ ์ด์์ค์์ abs() ํจ์๋ ์ ๋๊ฐ์ ๊ตฌํ๊ธฐ ์ํ ํจ์์ด๋ฉฐ ์ด ํจ์๋ ๋ณด๋ฉด math.h ํค๋์ ํฌํจ๋์ด ์์๊ฑฐ๋ผ๊ณ ์คํดํ๊ธฐ ์ฝ๋ค. ๋์ ๊ฒฝ์ฐ์๋ ๊ทธ๋ ๊ฒ ์ฐฉ๊ฐํ๊ณ ๋ฐฑ์ค์ ์ ์ถํ๋๋ฐ ์ปดํ์ผ๋ฌ ์ค๋ฅ๋ฅผ ๋ฟ์ด๋๋ค. ๊ทธ ์ด์ ๋ abs() ํจ์์ ๊ฒฝ์ฐ stdlib.h์ ํฌํจ๋ ํจ์์๊ธฐ ๋๋ฌธ์ด๋ค.
์ ๋๊ฐํจ์๋ฅผ ํ์ฉํ ์ด์ ๋ ์ค์์ผ๋ก ๋ถํฐ ํ์ฌ ์ขํ๊ฐ ๋จ์ด์ง ์ ๋์ ์ธ ๊ฐ์ ์ธก์ ํ๊ธฐ ์ํจ์ด์์ผ๋ฉฐ, ์ด ๊ฐ์ ์ด์ฉํด ์ขํ์ ์ธต์๋ฅผ ๊ตฌํ์๋ค.
์ธต์?
์๊น๋ถํฐ ์ธต์๋ผ๋ ๋ง์ ๊ณ์ ์ธ๊ธํ๋๋ฐ ์ฝ๊ฒ ๋งํด ๊ณผ์ผ์ ๊ป์ง์ ์์ํ๋ฉด ์ฝ๋ค.
์์ ๊ณผ์ ์ ๊ทธ๋ฆผ์ผ๋ก ๋ํ๋ธ ์๋ฅผ ๋ณด๋ฉด 1์ ์ ์ธํ๊ณ 2~9๋ฅผ 1์ธต์ด๋ผ ๊ท์ ํ๊ณ floor_ ๋ณ์๋ 1์ด๋ผ๋ ๋ณ์๋ก ๋ฒํธ ๋งค๊ฒผ์ผ๋ฉฐ, 10~25๋ฅผ 2์ธต์ด๋ผ ๊ท์ ํ์๋ค.
ํ๊ธฐ
๋์ ๊ฒฝ์ฐ ์ค์ฌ์ ์ ํ๋ ์ ํ๊ณ ์์ชฝ์์ ๋ฐ๊นฅ์ชฝ์ผ๋ก ๋์ ๋์ค๋ฉด์ ๋ฌํฝ์ด๋ฅผ ๋ง๋ค๋๋ก ํ์์ผ๋ ๋์ ๋์ผํ ๋ฌธ์ ๋ฅผ ์ ๋ฒ์ ํ์๋ ์น๊ตฌ์ ๊ฒฝ์ฐ ๋ฐ๊นฅ์ชฝ์์๋ถํฐ ์์ชฝ์ผ๋ก ์ซ์๋ฅผ ์ ๋๋ก ์๊ณ ๋ฆฌ์ฆ์ ์์ฑํ๋ฉด ๋ ์ฝ๊ฒ ํ ์ ์๋ค๊ณ ์ ์์ ํ์๋ค. ๊ทธ๋์ ๋์ค์ ๊ธฐํ๊ฐ ๋๋ค๋ฉด ๊ทธ๋ฐ๋ฐฉ๋ฒ์ผ๋ก ๋ค์ ํ์ด๋ณด๋ ๊ฒ๋ ๋์์ง ์๋ค๊ณ ์๊ฐํ์๋ค.