๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Programmers lv-1

์‹คํŒจ์œจ - Java [์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต]

by ๊ทคํ”ผํ‚ค 2022. 12. 26.

 

 

โค๏ธ Problem

๋”๋ณด๊ธฐ
  • ๋ฌธ์ œ
    ์Šˆํผ ๊ฒŒ์ž„ ๊ฐœ๋ฐœ์ž ์˜ค๋ ๋ฆฌ๋Š” ํฐ ๊ณ ๋ฏผ์— ๋น ์กŒ๋‹ค. ๊ทธ๋…€๊ฐ€ ๋งŒ๋“  ํ”„๋žœ์ฆˆ ์˜ค์ฒœ์„ฑ์ด ๋Œ€์„ฑ๊ณต์„ ๊ฑฐ๋’€์ง€๋งŒ, ์š”์ฆ˜ ์‹ ๊ทœ ์‚ฌ์šฉ์ž์˜ ์ˆ˜๊ฐ€ ๊ธ‰๊ฐํ•œ ๊ฒƒ์ด๋‹ค. ์›์ธ์€ ์‹ ๊ทœ ์‚ฌ์šฉ์ž์™€ ๊ธฐ์กด ์‚ฌ์šฉ์ž ์‚ฌ์ด์— ์Šคํ…Œ์ด์ง€ ์ฐจ์ด๊ฐ€ ๋„ˆ๋ฌด ํฐ ๊ฒƒ์ด ๋ฌธ์ œ์˜€๋‹ค.

    ์ด ๋ฌธ์ œ๋ฅผ ์–ด๋–ป๊ฒŒ ํ• ๊นŒ ๊ณ ๋ฏผ ํ•œ ๊ทธ๋…€๋Š” ๋™์ ์œผ๋กœ ๊ฒŒ์ž„ ์‹œ๊ฐ„์„ ๋Š˜๋ ค์„œ ๋‚œ์ด๋„๋ฅผ ์กฐ์ ˆํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค. ์—ญ์‹œ ์Šˆํผ ๊ฐœ๋ฐœ์ž๋ผ ๋Œ€๋ถ€๋ถ„์˜ ๋กœ์ง์€ ์‰ฝ๊ฒŒ ๊ตฌํ˜„ํ–ˆ์ง€๋งŒ, ์‹คํŒจ์œจ์„ ๊ตฌํ•˜๋Š” ๋ถ€๋ถ„์—์„œ ์œ„๊ธฐ์— ๋น ์ง€๊ณ  ๋ง์•˜๋‹ค. ์˜ค๋ ๋ฆฌ๋ฅผ ์œ„ํ•ด ์‹คํŒจ์œจ์„ ๊ตฌํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์™„์„ฑํ•˜๋ผ.

    ์‹คํŒจ์œจ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜ํ•œ๋‹ค.
    ์Šคํ…Œ์ด์ง€์— ๋„๋‹ฌํ–ˆ์œผ๋‚˜ ์•„์ง ํด๋ฆฌ์–ดํ•˜์ง€ ๋ชปํ•œ ํ”Œ๋ ˆ์ด์–ด์˜ ์ˆ˜ / ์Šคํ…Œ์ด์ง€์— ๋„๋‹ฌํ•œ ํ”Œ๋ ˆ์ด์–ด ์ˆ˜
    ์ „์ฒด ์Šคํ…Œ์ด์ง€์˜ ๊ฐœ์ˆ˜ N, ๊ฒŒ์ž„์„ ์ด์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ํ˜„์žฌ ๋ฉˆ์ถฐ์žˆ๋Š” ์Šคํ…Œ์ด์ง€์˜ ๋ฒˆํ˜ธ๊ฐ€ ๋‹ด๊ธด ๋ฐฐ์—ด stages๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ์‹คํŒจ์œจ์ด ๋†’์€ ์Šคํ…Œ์ด์ง€๋ถ€ํ„ฐ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์Šคํ…Œ์ด์ง€์˜ ๋ฒˆํ˜ธ๊ฐ€ ๋‹ด๊ฒจ์žˆ๋Š” ๋ฐฐ์—ด์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•˜๋ผ.

 

  • ์ œํ•œ ์‚ฌํ•ญ
    • ์Šคํ…Œ์ด์ง€์˜ ๊ฐœ์ˆ˜ N์€ 1 ์ด์ƒ 500 ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋‹ค.
    • stages์˜ ๊ธธ์ด๋Š” 1 ์ด์ƒ 200,000 ์ดํ•˜์ด๋‹ค.
    • stages์—๋Š” 1 ์ด์ƒ N + 1 ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜๊ฐ€ ๋‹ด๊ฒจ์žˆ๋‹ค.
    • ๊ฐ ์ž์—ฐ์ˆ˜๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ํ˜„์žฌ ๋„์ „ ์ค‘์ธ ์Šคํ…Œ์ด์ง€์˜ ๋ฒˆํ˜ธ๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค.
    • ๋‹จ, N + 1 ์€ ๋งˆ์ง€๋ง‰ ์Šคํ…Œ์ด์ง€(N ๋ฒˆ์งธ ์Šคํ…Œ์ด์ง€) ๊นŒ์ง€ ํด๋ฆฌ์–ด ํ•œ ์‚ฌ์šฉ์ž๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค.
    • ๋งŒ์•ฝ ์‹คํŒจ์œจ์ด ๊ฐ™์€ ์Šคํ…Œ์ด์ง€๊ฐ€ ์žˆ๋‹ค๋ฉด ์ž‘์€ ๋ฒˆํ˜ธ์˜ ์Šคํ…Œ์ด์ง€๊ฐ€ ๋จผ์ € ์˜ค๋„๋ก ํ•˜๋ฉด ๋œ๋‹ค.
    • ์Šคํ…Œ์ด์ง€์— ๋„๋‹ฌํ•œ ์œ ์ €๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ ํ•ด๋‹น ์Šคํ…Œ์ด์ง€์˜ ์‹คํŒจ์œจ์€ 0 ์œผ๋กœ ์ •์˜ํ•œ๋‹ค.

 

  • ์ž…์ถœ๋ ฅ ์˜ˆ & ์„ค๋ช…
no N stages result
1 5 [2, 1, 2, 6, 2, 4, 3, 3] [3,4,2,1,5]
2 4 [4,4,4,4,4] [4,1,2,3]
  1. 1๋ฒˆ ์Šคํ…Œ์ด์ง€์—๋Š” ์ด 8๋ช…์˜ ์‚ฌ์šฉ์ž๊ฐ€ ๋„์ „ํ–ˆ์œผ๋ฉฐ, ์ด ์ค‘ 1๋ช…์˜ ์‚ฌ์šฉ์ž๊ฐ€ ์•„์ง ํด๋ฆฌ์–ดํ•˜์ง€ ๋ชปํ–ˆ๋‹ค. ๋”ฐ๋ผ์„œ 1๋ฒˆ ์Šคํ…Œ์ด์ง€์˜ ์‹คํŒจ์œจ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
    1 ๋ฒˆ ์Šคํ…Œ์ด์ง€ ์‹คํŒจ์œจ : 1/8

    2๋ฒˆ ์Šคํ…Œ์ด์ง€์—๋Š” ์ด 7๋ช…์˜ ์‚ฌ์šฉ์ž๊ฐ€ ๋„์ „ํ–ˆ์œผ๋ฉฐ, ์ด ์ค‘ 3๋ช…์˜ ์‚ฌ์šฉ์ž๊ฐ€ ์•„์ง ํด๋ฆฌ์–ดํ•˜์ง€ ๋ชปํ–ˆ๋‹ค. ๋”ฐ๋ผ์„œ 2๋ฒˆ ์Šคํ…Œ์ด์ง€์˜ ์‹คํŒจ์œจ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
    2 ๋ฒˆ ์Šคํ…Œ์ด์ง€ ์‹คํŒจ์œจ : 3/7

    ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋‚˜๋จธ์ง€ ์Šคํ…Œ์ด์ง€์˜ ์‹คํŒจ์œจ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
    3 ๋ฒˆ ์Šคํ…Œ์ด์ง€ ์‹คํŒจ์œจ : 2/4
    4๋ฒˆ ์Šคํ…Œ์ด์ง€ ์‹คํŒจ์œจ : 1/2
    5๋ฒˆ ์Šคํ…Œ์ด์ง€ ์‹คํŒจ์œจ : 0/1

    ๊ฐ ์Šคํ…Œ์ด์ง€์˜ ๋ฒˆํ˜ธ๋ฅผ ์‹คํŒจ์œจ์˜ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
    [3,4,2,1,5]

  2. ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ ๋งˆ์ง€๋ง‰ ์Šคํ…Œ์ด์ง€์— ์žˆ์œผ๋ฏ€๋กœ 4๋ฒˆ ์Šคํ…Œ์ด์ง€์˜ ์‹คํŒจ์œจ์€ 1์ด๋ฉฐ ๋‚˜๋จธ์ง€ ์Šคํ…Œ์ด์ง€์˜ ์‹คํŒจ์œจ์€ 0์ด๋‹ค.
    [4,1,2,3]

 

๐Ÿ’› Solution

ํ’€์ด

import java.util.Arrays;
import java.util.Collections;
import java.util.Map;
import java.util.TreeMap;
class Solution {
    public int[] solution(int N, int[] stages) {
		int[] answer = new int[N];
		int[] clear = new int[N];
		int[] stay = new int[N];
		
		for(int i=0; i<stages.length; i++) {
			for(int j=0; j<stages[i]; j++) {
				clear[j]++;
				if(j==stages[i]-1) {
					stay[j]++;
				}
				if(j==N-1) {
					break;
				}
			}
		}
		

		double[] percent = new double[N];
		for(int i=0; i<clear.length; i++) {
			if(stay[i]!=0) {
				percent[i] = (double)stay[i]/(double)clear[i];
			} else {
				percent[i] = 0;
			}
		}
		
		Map<Integer, Double> map = new TreeMap<>();
		
		for(int i=0; i<percent.length; i++) {
			map.put(i+1, percent[i]);
		}
		
		Object[] sorting = map.values().toArray();
		Arrays.sort(sorting, Collections.reverseOrder());
		for(int i=0; i<sorting.length; i++) {
			for(int j=0; j<map.size(); j++) {
				if(map.get(j+1)==sorting[i]) {
					sorting[i] = j+1;
					map.remove(j+1, sorting[i]);
				}
			}
		}
        		
		for(int i=0; i<sorting.length; i++) {
			answer[i] = (int) sorting[i];
		}
        return answer;
    }
}

 

์ฒ˜๋ฆฌ์†๋„ SO SO


 


 

๐Ÿ’œ Comment

์™€ ์ด ๋ฌธ์ œ๋Š” ์ง„์งœ ์˜ค๋ž˜ ๊ฑธ๋ ธ๊ณ , ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๊ฐ€ ๊ณ„์† 1, 6, 7, 9, 13, 24, 25๋ฒˆ์ด ์‹คํŒจํ•ด์„œ ๊ณ ๋ฏผ์— ๊ณ ๋ฏผ์„ ๊ฑฐ๋“ญํ–ˆ๋˜ ๋ฌธ์ œ๋‹ค. ์ฒ˜๋ฆฌ ์†๋„๋Š” ๋งˆ์Œ์— ๋“ค์ง€ ์•Š์ง€๋งŒ ํ’€์—ˆ๋‹ค๋Š” ๊ฒƒ์— ์˜์˜๋ฅผ ๋‘๊ณ  ์žˆ๋‹ค. Map์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ์œผ๋ฉด ์ข€ ๋” ํšจ์œจ์ ์ธ ์ฝ”๋“œ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.

๋จผ์ €, ์ •๋‹ต์„ ๋‹ด์„ ๋ฐฐ์—ด int[] answer์™€ ์Šคํ…Œ์ด์ง€์— ๋„๋‹ฌํ•œ ํ”Œ๋ ˆ์ด์–ด ์ˆ˜๋ฅผ ๋‹ด์„ ๋ฐฐ์—ด int[] clear, ์Šคํ…Œ์ด์ง€์— ๋„๋‹ฌํ–ˆ์œผ๋‚˜ ์•„์ง ํด๋ฆฌ์–ดํ•˜์ง€ ๋ชปํ•œ ํ”Œ๋ ˆ์ด์–ด ์ˆ˜๋ฅผ ๋‹ด์„ ๋ฐฐ์—ด int[] stay๋ฅผ ์Šคํ…Œ์ด์ง€ ๊ฐœ์ˆ˜์ธ N ํฌ๊ธฐ ๋งŒํผ ๋งŒ๋“ค์–ด ๋‘์—ˆ๋‹ค. ๊ฐ๊ฐ์˜ ์ธ๋ฑ์Šค๋Š” ์Šคํ…Œ์ด์ง€ ๋ฒˆํ˜ธ๊ฐ€ ๋œ๋‹ค. ์Šคํ…Œ์ด์ง€๋Š” 1๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์ง€๋งŒ ์ธ๋ฑ์Šค๋Š” 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ฏ€๋กœ ์ผ๋‹จ +1์„ ๋‚˜์ค‘์— ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.

๊ทธ ๋‹ค์Œ ์ด์ค‘for๋ฌธ์„ ์‚ฌ์šฉํ•ด์„œ i์—๋Š” stages.length๊นŒ์ง€, j๋Š” stages[i]๊นŒ์ง€ ๋Œ๋„๋ก ๊ตฌํ˜„ํ–ˆ๋‹ค. stages[i]๋Š” ๊ฐ ์‚ฌ์šฉ์ž๊ฐ€ ๋„๋‹ฌํ•œ ์Šคํ…Œ์ด์ง€ ๋ฒˆํ˜ธ์ด๋ฏ€๋กœ ์‹ค์ œ ๊ฐ ์‚ฌ์šฉ์ž๋“ค์ด ํด๋ฆฌ์–ดํ•œ ์Šคํ…Œ์ด์ง€ ๋ฒˆํ˜ธ๋Š” stages[i]-1, ์ฆ‰ j-1์ด ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ๋„๋‹ฌํ•œ ์Šคํ…Œ์ด์ง€ ๋ฒˆํ˜ธ๋ฅผ ์ธ๋ฑ์Šค๋กœ ๊ฐ–๋Š” clear[j]๋Š” ๊ณ„์† ์ฆ๊ฐ€ํ•˜๋„๋ก ๊ตฌํ˜„ํ–ˆ๋‹ค., stay[j]๋Š” j==stages[i]-1์ธ ๊ฒฝ์šฐ์— stay[j]๊ฐ€ ์ฆ๊ฐ€ํ•˜๋„๋ก ํ•˜์˜€๋‹ค. ๊ทธ๋ฆฌ๊ณ  j๊ฐ€ N-1์ด๋ฉด ๊ทธ ๋‹ค์Œ ์‚ฌ์šฉ์ž์˜ ์Šคํ…Œ์ด์ง€ ๋ฒˆํ˜ธ๋ฅผ i์— ๋„ฃ๋„๋ก break;๋ฅผ ์„ ์–ธํ–ˆ๋‹ค.

ํ™•๋ฅ ์„ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด์„œ double[] percent๋ฅผ ์„ ์–ธํ–ˆ๊ณ  ํ•ด๋‹น ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋Š” ๊ฐ ์Šคํ…Œ์ด์ง€๊ฐ€ ๋œ๋‹ค. ์Šคํ…Œ์ด์ง€์— ๋„๋‹ฌํ–ˆ์œผ๋‚˜ ์•„์ง ํด๋ฆฌ์–ดํ•˜์ง€ ๋ชปํ•œ ํ”Œ๋ ˆ์ด์–ด ์ˆ˜๊ฐ€ 0์ธ ๊ฒฝ์šฐ๋Š” ๋ฌด์กฐ๊ฑด ์‹คํŒจ์œจ์ด 0์ด์—ฌ์•ผ ํ•˜๋ฏ€๋กœ ์ด๋ฅผ ์œ„ํ•ด for ๋ฐ˜๋ณต๋ฌธ์— if ์กฐ๊ฑด๋ฌธ์„ ๋„ฃ์—ˆ๋‹ค. stay[i]๊ฐ€ 0์ด ์•„๋‹Œ ๊ฒฝ์šฐ๋Š” ์‹คํŒจ์œจ์„ percent[i]์— ๋„ฃ๋„๋ก ํ•˜์˜€๊ณ , 0์ธ ๊ฒฝ์šฐ๋Š” 0์„ ๋„ฃ๋„๋ก ํ•˜์˜€๋‹ค. ์ด ๋ถ€๋ถ„์„ ๋†“์ณ์„œ ๊ณ„์† ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค 1, 6, 7, 9, 13, 24, 25๋ฒˆ์ด ํ†ต๊ณผํ•˜์ง€ ์•Š์•˜๋˜ ๊ฒƒ ๊ฐ™๋‹ค.

๊ทธ ๋‹ค์Œ TreeMap์„ ์‚ฌ์šฉํ•˜์—ฌ key๋กœ๋Š” i+1์„, value๋กœ๋Š” percent[i]๊ฐ€ ๋“ค์–ด๊ฐ€๋„๋ก for ๋ฐ˜๋ณต๋ฌธ์„ ๊ตฌ์„ฑํ–ˆ๋‹ค. i๋Š” ๊ฐ ์Šคํ…Œ์ด์ง€ ๋ฒˆํ˜ธ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ธ๋ฑ์Šค์ธ๋ฐ ์•ž์„œ ์–ธ๊ธ‰ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ์Šคํ…Œ์ด์ง€๋Š” 1๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ฏ€๋กœ +1์„ ํ•ด์ค€ ๊ฒƒ์ด๋‹ค. TreeMap๋ฅผ ์‚ฌ์šฉํ•œ ์ด์œ ๋Š” ๊ธฐ์–ต์ด ๋‚˜์ง€ ์•Š๋Š”๋ฐ ์ด ๋ถ€๋ถ„์„ ์ถ”ํ›„์— ์ˆ˜์ •ํ•˜๋ ค๊ณ  ํ•œ๋‹ค๐Ÿ˜…

๊ทธ ๋‹ค์Œ, Object[] sorting์„ ์„ ์–ธํ•˜๊ณ  ๊ทธ ์•ˆ์— Map์˜ value ๊ฐ’์„ ๋„ฃ๊ณ  Arrays.sort()์— Collections.reverseOrder()๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜์˜€๋‹ค. ๊ทธ ์ด์œ ๋Š” value๊ฐ’์œผ๋กœ ์ด์ œ TreeMap์•ˆ์— ์žˆ๋Š” ๊ฐ’์„ ์ฐพ์•„ ๋ฐฐ์—ด์— ๋„ฃ์„ ๋•Œ ์—ญ์ˆœ์œผ๋กœ ๋“ค์–ด๊ฐ€๋„๋ก ํ•˜๊ธฐ ์œ„ํ•จ์ด๋‹ค. (์‹คํŒจ์œจ์ด ๋†’์€ ์Šคํ…Œ์ด์ง€๋ถ€ํ„ฐ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์Šคํ…Œ์ด์ง€ ๋ฒˆํ˜ธ๋ฅผ ๋‹ด์•„์•ผํ•˜๊ณ , ๋งŒ์•ฝ ์‹คํŒจ์œจ์ด ๊ฐ™์€ ์Šคํ…Œ์ด์ง€๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์ž‘์€ ๋ฒˆํ˜ธ๋ถ€ํ„ฐ ๋“ค์–ด๊ฐ€์•ผํ•˜๋ฏ€๋กœ ์ •๋ ฌ์ด ํ•„์ˆ˜์ ์ด์—ˆ๋‹ค.)

์ด์ค‘ for๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ด์ œ sorting[]์— ๋“ค์–ด์žˆ๋Š” ์‹คํŒจ์œจ์„ ์Šคํ…Œ์ด์ง€ ๋ฒˆํ˜ธ๋กœ ๋ฐ”๊พธ์–ด์ฃผ์—ˆ๋‹ค. (sorting[i] = j+1;) ์ด ๋•Œ, ์ด์ค‘ for๋ฌธ์—์„œ map.get(j+1)๊ณผ sorting[i]์ด ์ผ์น˜ํ•˜๋Š” ๊ฒฝ์šฐ map์—์„œ key๋กœ๋Š” j+1, value๋กœ sorting[i]๋ฅผ ๊ฐ–๋Š” ๊ฒฝ์šฐ ์ œ๊ฑฐํ•˜๋„๋ก ํ•˜์˜€๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜์ง€ ์•Š์œผ๋ฉด ๋ฐ˜๋ณต๋ฌธ์ด๋ผ์„œ ์†Œ๋ชจ๊ฐ€ ์‹ฌํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ   j+1์ธ ๋˜๋Š” ์ด์œ ๋Š” ์Šคํ…Œ์ด์ง€ ๋ฒˆํ˜ธ ๋•Œ๋ฌธ์— map์˜ key ๊ฐ’์„ 1์”ฉ ์ฆ๊ฐ€์‹œ์ผœ ๋„ฃ์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. 

์ด์ œ, Object[] sorting์„ int[] answer๋กœ ์˜ฎ๊ฒจ์„œ ๋ฐ˜ํ™˜ํ•˜๋ฉด ๋! 

 

 

 

8217์œ„๐Ÿฅฐ๐Ÿฅฐ๐Ÿฅฐ ์นด์นด์˜ค๋ฌธ์ œ๋ฅผ ํ’€๋‹ค๋‹ˆ ๊ฐ๋ฉ,,

 

๋Œ“๊ธ€