๐ŸŽญ[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์„ฑ๊ฒฉ ์œ ํ˜• ๊ฒ€์‚ฌํ•˜๊ธฐ

Chobbyยท2022๋…„ 8์›” 23์ผ
1

Programmers

๋ชฉ๋ก ๋ณด๊ธฐ
35/349

ํ•ด๋‹น ๊ฒŒ์‹œ๋ฌผ์€ youngcheon๋‹˜์˜ velog ๊ฒŒ์‹œ๋ฌผ ์ค‘ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค LV.4 ์ˆซ์ž ๋ธ”๋ก JS ๋ฅผ ์ฐธ๊ณ ํ•˜์—ฌ ์ž‘์„ฑ๋˜์—ˆ์Œ์„ ๋ฏธ๋ฆฌ ๋ฐํž™๋‹ˆ๋‹ค.

๐ŸŽ€๋ฌธ์ œ ์„ค๋ช…

๋‚˜๋งŒ์˜ ์นด์นด์˜ค ์„ฑ๊ฒฉ ์œ ํ˜• ๊ฒ€์‚ฌ์ง€๋ฅผ ๋งŒ๋“ค๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.
์„ฑ๊ฒฉ ์œ ํ˜• ๊ฒ€์‚ฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ 4๊ฐœ ์ง€ํ‘œ๋กœ ์„ฑ๊ฒฉ ์œ ํ˜•์„ ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ์„ฑ๊ฒฉ์€ ๊ฐ ์ง€ํ‘œ์—์„œ ๋‘ ์œ ํ˜• ์ค‘ ํ•˜๋‚˜๋กœ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.

์ง€ํ‘œ ๋ฒˆํ˜ธ์„ฑ๊ฒฉ ์œ ํ˜•
1๋ฒˆ ์ง€ํ‘œ๋ผ์ด์–ธํ˜•(R), ํŠœ๋ธŒํ˜•(T)
2๋ฒˆ ์ง€ํ‘œ์ฝ˜ํ˜•(C), ํ”„๋กœ๋„ํ˜•(F)
3๋ฒˆ ์ง€ํ‘œ์ œ์ด์ง€ํ˜•(J), ๋ฌด์ง€ํ˜•(M)
4๋ฒˆ ์ง€ํ‘œ์–ดํ”ผ์น˜ํ˜•(A), ๋„ค์˜คํ˜•(N)

4๊ฐœ์˜ ์ง€ํ‘œ๊ฐ€ ์žˆ์œผ๋ฏ€๋กœ ์„ฑ๊ฒฉ ์œ ํ˜•์€ ์ด 16(=2 x 2 x 2 x 2)๊ฐ€์ง€๊ฐ€ ๋‚˜์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, "RFMN"์ด๋‚˜ "TCMA"์™€ ๊ฐ™์€ ์„ฑ๊ฒฉ ์œ ํ˜•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒ€์‚ฌ์ง€์—๋Š” ์ด n๊ฐœ์˜ ์งˆ๋ฌธ์ด ์žˆ๊ณ , ๊ฐ ์งˆ๋ฌธ์—๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ 7๊ฐœ์˜ ์„ ํƒ์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋งค์šฐ ๋น„๋™์˜
  • ๋น„๋™์˜
  • ์•ฝ๊ฐ„ ๋น„๋™์˜
  • ๋ชจ๋ฅด๊ฒ ์Œ
  • ์•ฝ๊ฐ„ ๋™์˜
  • ๋™์˜
  • ๋งค์šฐ ๋™์˜

๊ฐ ์งˆ๋ฌธ์€ 1๊ฐ€์ง€ ์ง€ํ‘œ๋กœ ์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜๋ฅผ ํŒ๋‹จํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ์–ด๋–ค ํ•œ ์งˆ๋ฌธ์—์„œ 4๋ฒˆ ์ง€ํ‘œ๋กœ ์•„๋ž˜ ํ‘œ์ฒ˜๋Ÿผ ์ ์ˆ˜๋ฅผ ๋งค๊ธธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„ ํƒ์ง€์„ฑ๊ฒฉ
๋งค์šฐ ๋น„๋™์˜๋„ค์˜คํ˜• 3์ 
๋น„๋™์˜๋„ค์˜คํ˜• 2์ 
์•ฝ๊ฐ„ ๋น„๋™์˜๋„ค์˜คํ˜• 1์ 
๋ชจ๋ฅด๊ฒ ์Œ์–ด๋–ค ์„ฑ๊ฒฉ ์œ ํ˜•๋„ ์ ์ˆ˜๋ฅผ ์–ป์ง€ ์•Š์Šต๋‹ˆ๋‹ค
์•ฝ๊ฐ„ ๋™์˜์–ดํ”ผ์น˜ํ˜• 1์ 
๋™์˜์–ดํ”ผ์น˜ํ˜• 2์ 
๋งค์šฐ ๋™์˜์–ดํ”ผ์น˜ํ˜• 3์ 

์ด๋•Œ ๊ฒ€์‚ฌ์ž๊ฐ€ ์งˆ๋ฌธ์—์„œ ์•ฝ๊ฐ„ ๋™์˜ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ•  ๊ฒฝ์šฐ ์–ดํ”ผ์น˜ํ˜•(A) ์„ฑ๊ฒฉ ์œ ํ˜• 1์ ์„ ๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ ๊ฒ€์‚ฌ์ž๊ฐ€ ๋งค์šฐ ๋น„๋™์˜ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ•  ๊ฒฝ์šฐ ๋„ค์˜คํ˜•(N) ์„ฑ๊ฒฉ ์œ ํ˜• 3์ ์„ ๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์œ„ ์˜ˆ์‹œ์ฒ˜๋Ÿผ ๋„ค์˜คํ˜•์ด ๋น„๋™์˜, ์–ดํ”ผ์น˜ํ˜•์ด ๋™์˜์ธ ๊ฒฝ์šฐ๋งŒ ์ฃผ์–ด์ง€์ง€ ์•Š๊ณ , ์งˆ๋ฌธ์— ๋”ฐ๋ผ ๋„ค์˜คํ˜•์ด ๋™์˜, ์–ดํ”ผ์น˜ํ˜•์ด ๋น„๋™์˜์ธ ๊ฒฝ์šฐ๋„ ์ฃผ์–ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ ๊ฐ ์„ ํƒ์ง€๋Š” ๊ณ ์ •์ ์ธ ํฌ๊ธฐ์˜ ์ ์ˆ˜๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋งค์šฐ ๋™์˜๋‚˜ ๋งค์šฐ ๋น„๋™์˜ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ•˜๋ฉด 3์ ์„ ์–ป์Šต๋‹ˆ๋‹ค.
  • ๋™์˜๋‚˜ ๋น„๋™์˜ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ•˜๋ฉด 2์ ์„ ์–ป์Šต๋‹ˆ๋‹ค.
  • ์•ฝ๊ฐ„ ๋™์˜๋‚˜ ์•ฝ๊ฐ„ ๋น„๋™์˜ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ•˜๋ฉด 1์ ์„ ์–ป์Šต๋‹ˆ๋‹ค.
  • ๋ชจ๋ฅด๊ฒ ์Œ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ•˜๋ฉด ์ ์ˆ˜๋ฅผ ์–ป์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ฒ€์‚ฌ ๊ฒฐ๊ณผ๋Š” ๋ชจ๋“  ์งˆ๋ฌธ์˜ ์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜๋ฅผ ๋”ํ•˜์—ฌ ๊ฐ ์ง€ํ‘œ์—์„œ ๋” ๋†’์€ ์ ์ˆ˜๋ฅผ ๋ฐ›์€ ์„ฑ๊ฒฉ ์œ ํ˜•์ด ๊ฒ€์‚ฌ์ž์˜ ์„ฑ๊ฒฉ ์œ ํ˜•์ด๋ผ๊ณ  ํŒ๋‹จํ•ฉ๋‹ˆ๋‹ค. ๋‹จ, ํ•˜๋‚˜์˜ ์ง€ํ‘œ์—์„œ ๊ฐ ์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜๊ฐ€ ๊ฐ™์œผ๋ฉด, ๋‘ ์„ฑ๊ฒฉ ์œ ํ˜• ์ค‘ ์‚ฌ์ „ ์ˆœ์œผ๋กœ ๋น ๋ฅธ ์„ฑ๊ฒฉ ์œ ํ˜•์„ ๊ฒ€์‚ฌ์ž์˜ ์„ฑ๊ฒฉ ์œ ํ˜•์ด๋ผ๊ณ  ํŒ๋‹จํ•ฉ๋‹ˆ๋‹ค.

์งˆ๋ฌธ๋งˆ๋‹ค ํŒ๋‹จํ•˜๋Š” ์ง€ํ‘œ๋ฅผ ๋‹ด์€ 1์ฐจ์› ๋ฌธ์ž์—ด ๋ฐฐ์—ด survey์™€ ๊ฒ€์‚ฌ์ž๊ฐ€ ๊ฐ ์งˆ๋ฌธ๋งˆ๋‹ค ์„ ํƒํ•œ ์„ ํƒ์ง€๋ฅผ ๋‹ด์€ 1์ฐจ์› ์ •์ˆ˜ ๋ฐฐ์—ด choices๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ์ด๋•Œ, ๊ฒ€์‚ฌ์ž์˜ ์„ฑ๊ฒฉ ์œ ํ˜• ๊ฒ€์‚ฌ ๊ฒฐ๊ณผ๋ฅผ ์ง€ํ‘œ ๋ฒˆํ˜ธ ์ˆœ์„œ๋Œ€๋กœ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.


๐ŸŽ—์ œํ•œ์‚ฌํ•ญ

  • 1 โ‰ค survey์˜ ๊ธธ์ด ( = n) โ‰ค 1,000

    • survey์˜ ์›์†Œ๋Š” "RT", "TR", "FC", "CF", "MJ", "JM", "AN", "NA" ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.
    • survey[i]์˜ ์ฒซ ๋ฒˆ์งธ ์บ๋ฆญํ„ฐ๋Š” i+1๋ฒˆ ์งˆ๋ฌธ์˜ ๋น„๋™์˜ ๊ด€๋ จ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ•˜๋ฉด ๋ฐ›๋Š” ์„ฑ๊ฒฉ ์œ ํ˜•์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
    • survey[i]์˜ ๋‘ ๋ฒˆ์งธ ์บ๋ฆญํ„ฐ๋Š” i+1๋ฒˆ ์งˆ๋ฌธ์˜ ๋™์˜ ๊ด€๋ จ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ•˜๋ฉด ๋ฐ›๋Š” ์„ฑ๊ฒฉ ์œ ํ˜•์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
  • choices์˜ ๊ธธ์ด = survey์˜ ๊ธธ์ด

    • choices[i]๋Š” ๊ฒ€์‚ฌ์ž๊ฐ€ ์„ ํƒํ•œ i+1๋ฒˆ์งธ ์งˆ๋ฌธ์˜ ์„ ํƒ์ง€๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
    • 1 โ‰ค choices์˜ ์›์†Œ โ‰ค 7
choices๋œป
1๋งค์šฐ ๋น„๋™์˜
2๋น„๋™์˜
3์•ฝ๊ฐ„ ๋น„๋™์˜
4๋ชจ๋ฅด๊ฒ ์Œ
5์•ฝ๊ฐ„ ๋™์˜
6๋™์˜
7๋งค์šฐ ๋™์˜

โ™ฆ์ž…์ถœ๋ ฅ ์˜ˆ

surveychoicesresult
["AN", "CF", "MJ", "RT", "NA"][5, 3, 2, 7, 5]"TCMA"
["TR", "RT", "TR"][7, 1, 3]"RCJA"

์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช…

๐Ÿคธโ€โ™‚๏ธ์ž…์ถœ๋ ฅ ์˜ˆ #1

1๋ฒˆ ์งˆ๋ฌธ์˜ ์ ์ˆ˜ ๋ฐฐ์น˜๋Š” ์•„๋ž˜ ํ‘œ์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์„ ํƒ์ง€์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜
๋งค์šฐ ๋น„๋™์˜์–ดํ”ผ์น˜ํ˜• 3์ 
๋น„๋™์˜์–ดํ”ผ์น˜ํ˜• 2์ 
์•ฝ๊ฐ„ ๋น„๋™์˜์–ดํ”ผ์น˜ํ˜• 1์ 
๋ชจ๋ฅด๊ฒ ์Œ์–ด๋–ค ์„ฑ๊ฒฉ ์œ ํ˜•๋„ ์ ์ˆ˜๋ฅผ ์–ป์ง€ ์•Š์Šต๋‹ˆ๋‹ค
์•ฝ๊ฐ„ ๋™์˜๋„ค์˜คํ˜• 1์ 
๋™์˜๋„ค์˜คํ˜• 2์ 
๋งค์šฐ ๋™์˜๋„ค์˜คํ˜• 3์ 

1๋ฒˆ ์งˆ๋ฌธ์—์„œ๋Š” ์ง€๋ฌธ์˜ ์˜ˆ์‹œ์™€ ๋‹ค๋ฅด๊ฒŒ ๋น„๋™์˜ ๊ด€๋ จ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ•˜๋ฉด ์–ดํ”ผ์น˜ํ˜•(A) ์„ฑ๊ฒฉ ์œ ํ˜•์˜ ์ ์ˆ˜๋ฅผ ์–ป๊ณ , ๋™์˜ ๊ด€๋ จ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ•˜๋ฉด ๋„ค์˜คํ˜•(N) ์„ฑ๊ฒฉ ์œ ํ˜•์˜ ์ ์ˆ˜๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค.
1๋ฒˆ ์งˆ๋ฌธ์—์„œ ๊ฒ€์‚ฌ์ž๋Š” ์•ฝ๊ฐ„ ๋™์˜ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ–ˆ์œผ๋ฏ€๋กœ ๋„ค์˜คํ˜•(N) ์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜ 1์ ์„ ์–ป๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

2๋ฒˆ ์งˆ๋ฌธ์˜ ์ ์ˆ˜ ๋ฐฐ์น˜๋Š” ์•„๋ž˜ ํ‘œ์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์„ ํƒ์ง€์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜
๋งค์šฐ ๋น„๋™์˜์ฝ˜ํ˜• 3์ 
๋น„๋™์˜์ฝ˜ํ˜• 2์ 
์•ฝ๊ฐ„ ๋น„๋™์˜์ฝ˜ํ˜• 1์ 
๋ชจ๋ฅด๊ฒ ์Œ์–ด๋–ค ์„ฑ๊ฒฉ ์œ ํ˜•๋„ ์ ์ˆ˜๋ฅผ ์–ป์ง€ ์•Š์Šต๋‹ˆ๋‹ค
์•ฝ๊ฐ„ ๋™์˜ํ”„๋กœ๋„ํ˜• 1์ 
๋™์˜ํ”„๋กœ๋„ํ˜• 2์ 
๋งค์šฐ ๋™์˜ํ”„๋กœ๋„ํ˜• 3์ 

2๋ฒˆ ์งˆ๋ฌธ์—์„œ ๊ฒ€์‚ฌ์ž๋Š” ์•ฝ๊ฐ„ ๋น„๋™์˜ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ–ˆ์œผ๋ฏ€๋กœ ์ฝ˜ํ˜•(C) ์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜ 1์ ์„ ์–ป๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

3๋ฒˆ ์งˆ๋ฌธ์˜ ์ ์ˆ˜ ๋ฐฐ์น˜๋Š” ์•„๋ž˜ ํ‘œ์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์„ ํƒ์ง€์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜
๋งค์šฐ ๋น„๋™์˜๋ฌด์ง€ํ˜• 3์ 
๋น„๋™์˜๋ฌด์ง€ํ˜• 2์ 
์•ฝ๊ฐ„ ๋น„๋™์˜๋ฌด์ง€ํ˜• 1์ 
๋ชจ๋ฅด๊ฒ ์Œ์–ด๋–ค ์„ฑ๊ฒฉ ์œ ํ˜•๋„ ์ ์ˆ˜๋ฅผ ์–ป์ง€ ์•Š์Šต๋‹ˆ๋‹ค
์•ฝ๊ฐ„ ๋™์˜์ œ์ด์ง€ํ˜• 1์ 
๋™์˜์ œ์ด์ง€ํ˜• 2์ 
๋งค์šฐ ๋™์˜์ œ์ด์ง€ํ˜• 3์ 

3๋ฒˆ ์งˆ๋ฌธ์—์„œ ๊ฒ€์‚ฌ์ž๋Š” ๋น„๋™์˜ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ–ˆ์œผ๋ฏ€๋กœ ๋ฌด์ง€ํ˜•(M) ์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜ 2์ ์„ ์–ป๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

4๋ฒˆ ์งˆ๋ฌธ์˜ ์ ์ˆ˜ ๋ฐฐ์น˜๋Š” ์•„๋ž˜ ํ‘œ์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์„ ํƒ์ง€์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜
๋งค์šฐ ๋น„๋™์˜๋ผ์ด์–ธํ˜• 3์ 
๋น„๋™์˜๋ผ์ด์–ธํ˜• 2์ 
์•ฝ๊ฐ„ ๋น„๋™์˜๋ผ์ด์–ธํ˜• 1์ 
๋ชจ๋ฅด๊ฒ ์Œ์–ด๋–ค ์„ฑ๊ฒฉ ์œ ํ˜•๋„ ์ ์ˆ˜๋ฅผ ์–ป์ง€ ์•Š์Šต๋‹ˆ๋‹ค
์•ฝ๊ฐ„ ๋™์˜ํŠœ๋ธŒํ˜• 1์ 
๋™์˜ํŠœ๋ธŒํ˜• 2์ 
๋งค์šฐ ๋™์˜ํŠœ๋ธŒํ˜• 3์ 

4๋ฒˆ ์งˆ๋ฌธ์—์„œ ๊ฒ€์‚ฌ์ž๋Š” ๋งค์šฐ ๋™์˜ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ–ˆ์œผ๋ฏ€๋กœ ํŠœ๋ธŒํ˜•(T) ์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜ 3์ ์„ ์–ป๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

5๋ฒˆ ์งˆ๋ฌธ์˜ ์ ์ˆ˜ ๋ฐฐ์น˜๋Š” ์•„๋ž˜ ํ‘œ์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์„ ํƒ์ง€์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜
๋งค์šฐ ๋น„๋™์˜๋„ค์˜คํ˜• 3์ 
๋น„๋™์˜๋„ค์˜คํ˜• 2์ 
์•ฝ๊ฐ„ ๋น„๋™์˜๋„ค์˜คํ˜• 1์ 
๋ชจ๋ฅด๊ฒ ์Œ์–ด๋–ค ์„ฑ๊ฒฉ ์œ ํ˜•๋„ ์ ์ˆ˜๋ฅผ ์–ป์ง€ ์•Š์Šต๋‹ˆ๋‹ค
์•ฝ๊ฐ„ ๋™์˜์–ดํ”ผ์น˜ํ˜• 1์ 
๋™์˜์–ดํ”ผ์น˜ํ˜• 2์ 
๋งค์šฐ ๋™์˜์–ดํ”ผ์น˜ํ˜• 3์ 

5๋ฒˆ ์งˆ๋ฌธ์—์„œ ๊ฒ€์‚ฌ์ž๋Š” ์•ฝ๊ฐ„ ๋™์˜ ์„ ํƒ์ง€๋ฅผ ์„ ํƒํ–ˆ์œผ๋ฏ€๋กœ ์–ดํ”ผ์น˜ํ˜•(A) ์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜ 1์ ์„ ์–ป๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

1๋ฒˆ๋ถ€ํ„ฐ 5๋ฒˆ๊นŒ์ง€ ์งˆ๋ฌธ์˜ ์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜๋ฅผ ํ•ฉ์น˜๋ฉด ์•„๋ž˜ ํ‘œ์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ง€ํ‘œ ๋ฒˆํ˜ธ์„ฑ๊ฒฉ ์œ ํ˜•์ ์ˆ˜์„ฑ๊ฒฉ ์œ ํ˜•์ ์ˆ˜
1๋ฒˆ ์ง€ํ‘œ๋ผ์ด์–ธํ˜•(R)0ํŠœ๋ธŒํ˜•(T)3
2๋ฒˆ ์ง€ํ‘œ์ฝ˜ํ˜•(C)1ํ”„๋กœ๋„ํ˜•(F)0
3๋ฒˆ ์ง€ํ‘œ์ œ์ด์ง€ํ˜•(J)0๋ฌด์ง€ํ˜•(M)2
4๋ฒˆ ์ง€ํ‘œ์–ดํ”ผ์น˜ํ˜•(A)1๋„ค์˜คํ˜•(N)1

๊ฐ ์ง€ํ‘œ์—์„œ ๋” ์ ์ˆ˜๊ฐ€ ๋†’์€ T,C,M์ด ์„ฑ๊ฒฉ ์œ ํ˜•์ž…๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ, 4๋ฒˆ ์ง€ํ‘œ๋Š” 1์ ์œผ๋กœ ๋™์ผํ•œ ์ ์ˆ˜์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ, 4๋ฒˆ ์ง€ํ‘œ์˜ ์„ฑ๊ฒฉ ์œ ํ˜•์€ ์‚ฌ์ „์ˆœ์œผ๋กœ ๋น ๋ฅธ A์ž…๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ "TCMA"๋ฅผ return ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿคธโ€โ™€๏ธ์ž…์ถœ๋ ฅ ์˜ˆ #2

1๋ฒˆ๋ถ€ํ„ฐ 3๋ฒˆ๊นŒ์ง€ ์งˆ๋ฌธ์˜ ์„ฑ๊ฒฉ ์œ ํ˜• ์ ์ˆ˜๋ฅผ ํ•ฉ์น˜๋ฉด ์•„๋ž˜ ํ‘œ์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ง€ํ‘œ ๋ฒˆํ˜ธ์„ฑ๊ฒฉ ์œ ํ˜•์ ์ˆ˜์„ฑ๊ฒฉ ์œ ํ˜•์ ์ˆ˜
1๋ฒˆ ์ง€ํ‘œ๋ผ์ด์–ธํ˜•(R)6ํŠœ๋ธŒํ˜•(T)1
2๋ฒˆ ์ง€ํ‘œ์ฝ˜ํ˜•(C)0ํ”„๋กœ๋„ํ˜•(F)0
3๋ฒˆ ์ง€ํ‘œ์ œ์ด์ง€ํ˜•(J)0๋ฌด์ง€ํ˜•(M)0
4๋ฒˆ ์ง€ํ‘œ์–ดํ”ผ์น˜ํ˜•(A)0๋„ค์˜คํ˜•(N)0

1๋ฒˆ ์ง€ํ‘œ๋Š” ํŠœ๋ธŒํ˜•(T)๋ณด๋‹ค ๋ผ์ด์–ธํ˜•(R)์˜ ์ ์ˆ˜๊ฐ€ ๋” ๋†’์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ฒซ ๋ฒˆ์งธ ์ง€ํ‘œ์˜ ์„ฑ๊ฒฉ ์œ ํ˜•์€ R์ž…๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ, 2, 3, 4๋ฒˆ ์ง€ํ‘œ๋Š” ๋ชจ๋‘ 0์ ์œผ๋กœ ๋™์ผํ•œ ์ ์ˆ˜์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 2, 3, 4๋ฒˆ ์ง€ํ‘œ์˜ ์„ฑ๊ฒฉ ์œ ํ˜•์€ ์‚ฌ์ „์ˆœ์œผ๋กœ ๋น ๋ฅธ C, J, A์ž…๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ "RCJA"๋ฅผ return ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿง“๋‚˜์˜ ํ’€์ด

function solution(survey, choices) {
    // ์ •๋‹ต
    let result = ''
    // ๊ฒฝ์šฐ์˜ ์ˆ˜
    const MBTI = ['RT','CF','JM','AN']
    // *ํ•ต์‹ฌ: ์ˆœ์„œ๊ฐ€ ์žˆ๋Š” ๊ฐ์ฒด๊ฐ€ ํ•„์š”ํ•˜๊ธฐ์— Map์‚ฌ์šฉ
    const MBTI_Map = new Map()
    // ๋ชจ๋“  ๊ฐ์ฒด 0์œผ๋กœ ์ดˆ๊ธฐํ™”
    Array('R','T','C','F','J','M','A','N').forEach(a => MBTI_Map.set(a,0))
    // ๋ชจ๋“  ์œ ํ˜• ๋ฐ˜๋ณต
    survey.forEach((item,idx) => {
        // ์ฒซ๋ฒˆ์งธ ์ˆ˜์™€ ๋‘๋ฒˆ์งธ ์ˆ˜ ์ •์˜
        const [a,b] = item
        // -4๋ฅผ ํ•œ ๊ฒฝ์šฐ ์ˆ˜์— ๊ทธ๋Œ€๋กœ ๋ฐ˜์˜์ด ๊ฐ€๋Šฅ
        const num = choices[idx]-4
        // ํŠน์ • ์œ ํ˜•์˜ ์„ฑ๊ฒฉ์ด ์žˆ๋‹ค๋ฉด
        if(num > 0) {
            MBTI_Map.set(b,MBTI_Map.get(b)+num)
        } else if (num < 0){
            MBTI_Map.set(a,MBTI_Map.get(a)+Math.abs(num))
        }
    })
    // ์ ์„ฑ์ด ๋‚˜์˜จ ์ˆ˜ ์ค‘ ์•ŒํŒŒ๋ฒณ ์‚ฌ์ „์ˆœ์œผ๋กœ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๋‘ 
    return MBTI.map((item,idx) => {
        return [...item].sort((a,b) => MBTI_Map.get(b)-MBTI_Map.get(a))[0]
    }).join("")
}

์ด ๋ฌธ์ œ๋Š” MBTI๋ฅผ ๊ตฌํ•˜๊ธฐ ์œ„ํ•œ ์ˆœ์„œ๊ฐ€ ์žˆ๋Š” ๊ฐ์ฒด๊ฐ€ ์ค‘์š”ํ•œ ๋ฌธ์ œ์˜€๋˜ ๊ฒƒ ๊ฐ™๋‹ค ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•๋„ ๋งŽ๊ฒ ์ง€๋งŒ Map ์ž๋ฃŒํ˜•์„ ํ™œ์šฉํ•ด ์†์‰ฌ์šด ๋ฌธ์ œํ’€์ด๊ฐ€ ๊ฐ€๋Šฅํ–ˆ์Œ

profile
๋‚ด ์ง€์‹์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€๋‹ดํ•จ

0๊ฐœ์˜ ๋Œ“๊ธ€