๋‚ด ์ธ์ƒ์—์„œ ๋ฏฟ์„ ๊ฑด ์˜ค์ง ๋‚˜ ์ž์‹ ๋ฟ!

The only one you can truly trust is yourself.

๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ/Python ํ”„๋กœ๊ทธ๋ž˜๋ฐ

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ด๋ชจํ‹ฐ์ฝ˜ ํ• ์ธํ–‰์‚ฌ

๐ŸŽฎinspirer9 2023. 2. 12. 19:17
728x90
๋ฐ˜์‘ํ˜•

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 2023 KAKAO BLIND RECRUITMENT ๋ฌธ์ œ, ์ด๋ชจํ‹ฐ์ฝ˜ ํ• ์ธํ–‰์‚ฌ.

์ด๊ฑฐ ์ผ์ฃผ์ผ ์ •๋„ ๊ฑธ๋ฆฐ ๋“ฏ ํ•˜๋‹ค. ์•„๋ฌด๋ฆฌ ์ฝ์–ด๋„ ์ดํ•ด๊ฐ€ ์•ˆ๋˜์„œ... ใ…Žใ…Ž

 

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต | ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์Šค์ฟจ

๊ฐœ๋ฐœ์ž ์ทจ์—…์˜ ํ•„์ˆ˜ ๊ด€๋ฌธ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ๋ฅผ ์ฒ ์ €ํ•˜๊ฒŒ ์—ฐ์Šตํ•˜๊ณ  ๋Œ€๋น„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋ฅผ ์ด๋ง๋ผ! ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์—์„œ ์„ ๋ฐœํ•œ ๋ฌธ์ œ๋กœ ์œ ํ˜•์„ ํŒŒ์•…ํ•˜๊ณ  ์‹ค๋ ฅ์„ ์—…๊ทธ๋ ˆ์ด๋“œํ•ด ๋ณด์„ธ์š”!

school.programmers.co.kr

๊ทผ๋ฐ ์ด ํŒ์„ ์ฝ๊ณ  ๋‚˜์„œ ๋ฌด์ง€์„ฑ์œผ๋กœ ํ•ด๋ณด์ž. ํ–ˆ๋”๋‹ˆ...

https://school.programmers.co.kr/questions/43408

์ฃผ์˜ฅ๊ฐ™์€ ๊ฟ€ํŒ์ธ๋ฐ, ๋‚˜ ๊ฐ™์€ ๋ฌด์ง€์„ฑ ์ดˆ๋ณด์ž์—๊ฒŒ๋Š” ์ •๋ง ๊ฟ€ํŒ์ธ ๊ฒƒ ๊ฐ™๋‹ค. ๋ฌธ์ œ๋ฅผ ์ฝ์œผ๋ฉด์„œ ์ด๋ ‡๊ฒŒ ํ•ด์•ผ๋˜๋‚˜? ์ €๋ ‡๊ฒŒ ํ•ด์•ผ๋˜๋‚˜ ๊ณ ๋ฏผํ•  ํ•„์š”๊ฐ€ ์—†์ด ๋‹ค ํ•ด๋ณด๊ณ , ์ œ์ผ ์ข‹์€ ๊ฐ€๊ฒฉ์— ํŒ๋งคํ•œ ๊ฑธ ๊ณ ๋ฅด๋ฉด ๋˜๋Š” ๋ฌธ์ œ๋‹ค. ๊ทธ ์™€์ค‘์— itertools๋„ ๊ณต๋ถ€ํ–ˆ์œผ๋‹ˆ ์ด๋“์€ ์žˆ์—ˆ๋˜ ์ƒ˜.

๋ฌธ์ œ

๋ฌธ์ œ ์„ค๋ช…

์นด์นด์˜คํ†ก์—์„œ๋Š” ์ด๋ชจํ‹ฐ์ฝ˜์„ ๋ฌด์ œํ•œ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค ๊ฐ€์ž…์ž ์ˆ˜๋ฅผ ๋Š˜๋ฆฌ๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ์นด์นด์˜คํ†ก์—์„œ๋Š” ์ด๋ชจํ‹ฐ์ฝ˜ ํ• ์ธ ํ–‰์‚ฌ๋ฅผ ํ•˜๋Š”๋ฐ, ๋ชฉํ‘œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค ๊ฐ€์ž…์ž๋ฅผ ์ตœ๋Œ€ํ•œ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ.
  2. ์ด๋ชจํ‹ฐ์ฝ˜ ํŒ๋งค์•ก์„ ์ตœ๋Œ€ํ•œ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ.

1๋ฒˆ ๋ชฉํ‘œ๊ฐ€ ์šฐ์„ ์ด๋ฉฐ, 2๋ฒˆ ๋ชฉํ‘œ๊ฐ€ ๊ทธ ๋‹ค์Œ์ž…๋‹ˆ๋‹ค.

์ด๋ชจํ‹ฐ์ฝ˜ ํ• ์ธ ํ–‰์‚ฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.

  • n๋ช…์˜ ์นด์นด์˜คํ†ก ์‚ฌ์šฉ์ž๋“ค์—๊ฒŒ ์ด๋ชจํ‹ฐ์ฝ˜ m๊ฐœ๋ฅผ ํ• ์ธํ•˜์—ฌ ํŒ๋งคํ•ฉ๋‹ˆ๋‹ค.
  • ์ด๋ชจํ‹ฐ์ฝ˜๋งˆ๋‹ค ํ• ์ธ์œจ์€ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ• ์ธ์œจ์€ 10%, 20%, 30%, 40% ์ค‘ ํ•˜๋‚˜๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

์นด์นด์˜คํ†ก ์‚ฌ์šฉ์ž๋“ค์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ์ค€์„ ๋”ฐ๋ผ ์ด๋ชจํ‹ฐ์ฝ˜์„ ์‚ฌ๊ฑฐ๋‚˜, ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค์— ๊ฐ€์ž…ํ•ฉ๋‹ˆ๋‹ค.

  • ๊ฐ ์‚ฌ์šฉ์ž๋“ค์€ ์ž์‹ ์˜ ๊ธฐ์ค€์— ๋”ฐ๋ผ ์ผ์ • ๋น„์œจ ์ด์ƒ ํ• ์ธํ•˜๋Š” ์ด๋ชจํ‹ฐ์ฝ˜์„ ๋ชจ๋‘ ๊ตฌ๋งคํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฐ ์‚ฌ์šฉ์ž๋“ค์€ ์ž์‹ ์˜ ๊ธฐ์ค€์— ๋”ฐ๋ผ ์ด๋ชจํ‹ฐ์ฝ˜ ๊ตฌ๋งค ๋น„์šฉ์˜ ํ•ฉ์ด ์ผ์ • ๊ฐ€๊ฒฉ ์ด์ƒ์ด ๋œ๋‹ค๋ฉด, ์ด๋ชจํ‹ฐ์ฝ˜ ๊ตฌ๋งค๋ฅผ ๋ชจ๋‘ ์ทจ์†Œํ•˜๊ณ  ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค์— ๊ฐ€์ž…ํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ์€ 2๋ช…์˜ ์นด์นด์˜คํ†ก ์‚ฌ์šฉ์ž์™€ 2๊ฐœ์˜ ์ด๋ชจํ‹ฐ์ฝ˜์ด ์žˆ์„๋•Œ์˜ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž ๋น„์œจ ๊ฐ€๊ฒฉ
1 40 10,000
2 25 10,000
์ด๋ชจํ‹ฐ์ฝ˜ ๊ฐ€๊ฒฉ
1 7,000
2 9,000

1๋ฒˆ ์‚ฌ์šฉ์ž๋Š” 40%์ด์ƒ ํ• ์ธํ•˜๋Š” ์ด๋ชจํ‹ฐ์ฝ˜์„ ๋ชจ๋‘ ๊ตฌ๋งคํ•˜๊ณ , ์ด๋ชจํ‹ฐ์ฝ˜ ๊ตฌ๋งค ๋น„์šฉ์ด 10,000์› ์ด์ƒ์ด ๋˜๋ฉด ์ด๋ชจํ‹ฐ์ฝ˜ ๊ตฌ๋งค๋ฅผ ๋ชจ๋‘ ์ทจ์†Œํ•˜๊ณ  ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค์— ๊ฐ€์ž…ํ•ฉ๋‹ˆ๋‹ค.
2๋ฒˆ ์‚ฌ์šฉ์ž๋Š” 25%์ด์ƒ ํ• ์ธํ•˜๋Š” ์ด๋ชจํ‹ฐ์ฝ˜์„ ๋ชจ๋‘ ๊ตฌ๋งคํ•˜๊ณ , ์ด๋ชจํ‹ฐ์ฝ˜ ๊ตฌ๋งค ๋น„์šฉ์ด 10,000์› ์ด์ƒ์ด ๋˜๋ฉด ์ด๋ชจํ‹ฐ์ฝ˜ ๊ตฌ๋งค๋ฅผ ๋ชจ๋‘ ์ทจ์†Œํ•˜๊ณ  ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค์— ๊ฐ€์ž…ํ•ฉ๋‹ˆ๋‹ค.

1๋ฒˆ ์ด๋ชจํ‹ฐ์ฝ˜์˜ ๊ฐ€๊ฒฉ์€ 7,000์›, 2๋ฒˆ ์ด๋ชจํ‹ฐ์ฝ˜์˜ ๊ฐ€๊ฒฉ์€ 9,000์›์ž…๋‹ˆ๋‹ค.

๋งŒ์•ฝ, 2๊ฐœ์˜ ์ด๋ชจํ‹ฐ์ฝ˜์„ ๋ชจ๋‘ 40%์”ฉ ํ• ์ธํ•œ๋‹ค๋ฉด, 1๋ฒˆ ์‚ฌ์šฉ์ž์™€ 2๋ฒˆ ์‚ฌ์šฉ์ž ๋ชจ๋‘ 1,2๋ฒˆ ์ด๋ชจํ‹ฐ์ฝ˜์„ ๊ตฌ๋งคํ•˜๊ฒŒ ๋˜๊ณ , ๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž ๊ตฌ๋งคํ•œ ์ด๋ชจํ‹ฐ์ฝ˜ ์ด๋ชจํ‹ฐ์ฝ˜ ๊ตฌ๋งค ๋น„์šฉ ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค ๊ฐ€์ž… ์—ฌ๋ถ€
1 1, 2 9,600 X
2 1, 2 9,600 X

์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค ๊ฐ€์ž…์ž๋Š” 0๋ช…์ด ๋Š˜์–ด๋‚˜๊ณ  ์ด๋ชจํ‹ฐ์ฝ˜ ํŒ๋งค์•ก์€ 19,200์›์ด ๋Š˜์–ด๋‚ฉ๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ, 1๋ฒˆ ์ด๋ชจํ‹ฐ์ฝ˜์„ 30% ํ• ์ธํ•˜๊ณ  2๋ฒˆ ์ด๋ชจํ‹ฐ์ฝ˜์„ 40% ํ• ์ธํ•œ๋‹ค๋ฉด ๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž ๊ตฌ๋งคํ•œ ์ด๋ชจํ‹ฐ์ฝ˜ ์ด๋ชจํ‹ฐ์ฝ˜ ๊ตฌ๋งค ๋น„์šฉ ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค ๊ฐ€์ž… ์—ฌ๋ถ€
1 2 5,400 X
2 1, 2 10,300 O

2๋ฒˆ ์‚ฌ์šฉ์ž๋Š” ์ด๋ชจํ‹ฐ์ฝ˜ ๊ตฌ๋งค ๋น„์šฉ์„ 10,000์› ์ด์ƒ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ชจํ‹ฐ์ฝ˜ ๊ตฌ๋งค๋ฅผ ๋ชจ๋‘ ์ทจ์†Œํ•˜๊ณ  ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค์— ๊ฐ€์ž…ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
๋”ฐ๋ผ์„œ, ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค ๊ฐ€์ž…์ž๋Š” 1๋ช…์ด ๋Š˜์–ด๋‚˜๊ณ  ์ด๋ชจํ‹ฐ์ฝ˜ ํŒ๋งค์•ก์€ 5,400์›์ด ๋Š˜์–ด๋‚˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์นด์นด์˜คํ†ก ์‚ฌ์šฉ์ž n๋ช…์˜ ๊ตฌ๋งค ๊ธฐ์ค€์„ ๋‹ด์€ 2์ฐจ์› ์ •์ˆ˜ ๋ฐฐ์—ด users, ์ด๋ชจํ‹ฐ์ฝ˜ m๊ฐœ์˜ ์ •๊ฐ€๋ฅผ ๋‹ด์€ 1์ฐจ์› ์ •์ˆ˜ ๋ฐฐ์—ด emoticons๊ฐ€ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ์ด๋•Œ, ํ–‰์‚ฌ ๋ชฉ์ ์„ ์ตœ๋Œ€ํ•œ์œผ๋กœ ๋‹ฌ์„ฑํ–ˆ์„ ๋•Œ์˜ ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค ๊ฐ€์ž… ์ˆ˜์™€ ์ด๋ชจํ‹ฐ์ฝ˜ ๋งค์ถœ์•ก์„ 1์ฐจ์› ์ •์ˆ˜ ๋ฐฐ์—ด์— ๋‹ด์•„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.


์ œํ•œ์‚ฌํ•ญ

  • 1 ≤ users์˜ ๊ธธ์ด = n ≤ 100
    • users์˜ ์›์†Œ๋Š” [๋น„์œจ, ๊ฐ€๊ฒฉ]์˜ ํ˜•ํƒœ์ž…๋‹ˆ๋‹ค.
    • users[i]๋Š” i+1๋ฒˆ ๊ณ ๊ฐ์˜ ๊ตฌ๋งค ๊ธฐ์ค€์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
    • ๋น„์œจ% ์ด์ƒ์˜ ํ• ์ธ์ด ์žˆ๋Š” ์ด๋ชจํ‹ฐ์ฝ˜์„ ๋ชจ๋‘ ๊ตฌ๋งคํ•œ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.
      • 1 ≤ ๋น„์œจ ≤ 40
    • ๊ฐ€๊ฒฉ์ด์ƒ์˜ ๋ˆ์„ ์ด๋ชจํ‹ฐ์ฝ˜ ๊ตฌ๋งค์— ์‚ฌ์šฉํ•œ๋‹ค๋ฉด, ์ด๋ชจํ‹ฐ์ฝ˜ ๊ตฌ๋งค๋ฅผ ๋ชจ๋‘ ์ทจ์†Œํ•˜๊ณ  ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค์— ๊ฐ€์ž…ํ•œ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.
      • 100 ≤ ๊ฐ€๊ฒฉ ≤ 1,000,000
      • ๊ฐ€๊ฒฉ์€ 100์˜ ๋ฐฐ์ˆ˜์ž…๋‹ˆ๋‹ค.
  • 1 ≤ emoticons์˜ ๊ธธ์ด = m ≤ 7
    • emoticons[i]๋Š” i+1๋ฒˆ ์ด๋ชจํ‹ฐ์ฝ˜์˜ ์ •๊ฐ€๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
    • 100 ≤ emoticons์˜ ์›์†Œ ≤ 1,000,000
    • emoticons์˜ ์›์†Œ๋Š” 100์˜ ๋ฐฐ์ˆ˜์ž…๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ
users emoticons result
[[40, 10000], [25, 10000]] [7000, 9000] [1, 5400]
[[40, 2900], [23, 10000], [11, 5200], [5, 5900], [40, 3100], [27, 9200], [32, 6900]] [1300, 1500, 1600, 4900] [4, 13860]

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

์ž…์ถœ๋ ฅ ์˜ˆ #1

๋ฌธ์ œ์˜ ์˜ˆ์‹œ์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ #2

๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ• ์ธํ•˜๋Š” ๊ฒƒ์ด ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค ๊ฐ€์ž…์ž๋ฅผ ์ตœ๋Œ€ํ•œ ๋Š˜๋ฆฌ๋ฉด์„œ, ์ด๋ชจํ‹ฐ์ฝ˜ ํŒ๋งค์•ก ๋˜ํ•œ ์ตœ๋Œ€๋กœ ๋Š˜๋ฆฌ๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

์ด๋ชจํ‹ฐ์ฝ˜ ํ• ์ธ์œจ
1 40
2 40
3 20
4 40

์œ„์™€ ๊ฐ™์ด ํ• ์ธํ•˜๋ฉด 4๋ช…์˜ ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ๊ฐ€์ž…์ž์™€ 13,860์›์˜ ํŒ๋งค์•ก์„ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ• ์ธ์œจ์„ ์ ์šฉํ•˜์—ฌ ์ด๋ชจํ‹ฐ์ฝ˜์„ ํŒ๋งคํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์ด๋ณด๋‹ค ์ด๋ชจํ‹ฐ์ฝ˜ ํ”Œ๋Ÿฌ์Šค ์„œ๋น„์Šค ๊ฐ€์ž…์ž๋ฅผ ์ตœ๋Œ€ํ•œ ๋Š˜๋ฆฌ๋ฉด์„œ, ์ด๋ชจํ‹ฐ์ฝ˜ ํŒ๋งค์•ก ๋˜ํ•œ ์ตœ๋Œ€๋กœ ๋Š˜๋ฆฌ๋Š” ๋ฐฉ๋ฒ•์€ ์—†์Šต๋‹ˆ๋‹ค.
๋”ฐ๋ผ์„œ, [4, 13860]์„ return ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๋‚˜์˜ ํ’€์ด

  • ํŒŒ์ด์ฌ์€ ํ•œ๊ธ€์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด์„œ ์ข‹๋‹ค.
  • ๋ฌด์ง€์„ฑ์œผ๋กœ ๋ฌธ์ œ ํ’€ ๋•Œ๋Š” ํ•œ๊ธ€๋กœ ํ‘ธ๋Š”๊ฒŒ ๋” ์ข‹์€ ๋“ฏ...
from itertools import product

def solution(์‚ฌ์šฉ์ž, ์ด๋ชจํ‹ฐ์ฝ˜):
    ๊ธธ์ด = len(์ด๋ชจํ‹ฐ์ฝ˜)
    ๋‹ต = [0, 0]

    for ํŒ๋งค in product(range(10, 41, 10), repeat=๊ธธ์ด):
        ์นด์šดํŠธ = 0
        ๋ˆ = 0
        for i in range(len(์‚ฌ์šฉ์ž)):
            ์‚ฌ์šฉ์ž_ํŒ๋งค = ์‚ฌ์šฉ์ž[i][0]
            ํ•ฉ๊ณ„ = 0
            for j in range(len(ํŒ๋งค)):
                if ์‚ฌ์šฉ์ž_ํŒ๋งค <= ํŒ๋งค[j]:
                    ํ•ฉ๊ณ„ += ์ด๋ชจํ‹ฐ์ฝ˜[j] * (100 - ํŒ๋งค[j]) / 100
            if ํ•ฉ๊ณ„ >= ์‚ฌ์šฉ์ž[i][1]:
                ์นด์šดํŠธ += 1
            else:
                ๋ˆ += ํ•ฉ๊ณ„
        if ๋‹ต[0] > ์นด์šดํŠธ:
            continue
        if ๋‹ต[0] == ์นด์šดํŠธ and ๋‹ต[1] > ๋ˆ:
            continue
        ๋‹ต = [์นด์šดํŠธ, ๋ˆ]
        
    return ๋‹ต
  • ์†๋„ ์ฒดํฌ (ํšจ์œจ์„ฑ ํ…Œ์ŠคํŠธ๊ฐ€ ์—†์œผ๋ฏ€๋กœ ์˜๋ฏธ๋Š” ์—†๋Š” ๊ฒƒ ๊ฐ™๋‹ค)
์ •ํ™•์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (0.04ms, 10.5MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (0.10ms, 10.5MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (0.43ms, 10.5MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (2.18ms, 10.4MB)
ํ…Œ์ŠคํŠธ 5 ใ€‰	ํ†ต๊ณผ (4.30ms, 10.3MB)
ํ…Œ์ŠคํŠธ 6 ใ€‰	ํ†ต๊ณผ (1.98ms, 10.3MB)
ํ…Œ์ŠคํŠธ 7 ใ€‰	ํ†ต๊ณผ (19.01ms, 10.4MB)
ํ…Œ์ŠคํŠธ 8 ใ€‰	ํ†ต๊ณผ (9.02ms, 10.5MB)
ํ…Œ์ŠคํŠธ 9 ใ€‰	ํ†ต๊ณผ (91.67ms, 10.3MB)
ํ…Œ์ŠคํŠธ 10 ใ€‰	ํ†ต๊ณผ (38.08ms, 10.6MB)
ํ…Œ์ŠคํŠธ 11 ใ€‰	ํ†ต๊ณผ (387.94ms, 10.4MB)
ํ…Œ์ŠคํŠธ 12 ใ€‰	ํ†ต๊ณผ (191.02ms, 10.3MB)
ํ…Œ์ŠคํŠธ 13 ใ€‰	ํ†ต๊ณผ (1778.62ms, 10.4MB)
ํ…Œ์ŠคํŠธ 14 ใ€‰	ํ†ต๊ณผ (1591.69ms, 10.6MB)
ํ…Œ์ŠคํŠธ 15 ใ€‰	ํ†ต๊ณผ (84.73ms, 10.6MB)
ํ…Œ์ŠคํŠธ 16 ใ€‰	ํ†ต๊ณผ (84.02ms, 10.2MB)
ํ…Œ์ŠคํŠธ 17 ใ€‰	ํ†ต๊ณผ (0.69ms, 10.3MB)
ํ…Œ์ŠคํŠธ 18 ใ€‰	ํ†ต๊ณผ (24.74ms, 10.4MB)
ํ…Œ์ŠคํŠธ 19 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.3MB)
ํ…Œ์ŠคํŠธ 20 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.4MB)
  • ์ด๋ฒˆ์— ์•Œ๊ฒŒ ๋œ itertools ๋ฌด์ง€์„ฑ์œผ๋กœ ์กฐํ•ฉ ๊ฐ™์€ ๊ฑฐ ํ•  ๋•Œ ์ข‹์€ ๊ฒƒ ๊ฐ™๋‹ค.
from itertools import product

emot = [7000, 9000, 8000, 10000]
leng = len(emot)

for sales in product(range(10, 41, 10), repeat=leng):
    print(sales)
  • ๊ทธ๋ฆฌ๊ณ  ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค ์†Œ์Šค ์ฝ”๋“œ ๋ณด๋‹ˆ๊นŒ ๋‚ด๊ฐ€ ๋ชจ๋ฅด๋Š” ๊ฒŒ ๋งŽ๋‹ค.
for item_price, item_percent in zip(emoticons, p):
    if item_percent >= buy_percent:
        user_price += item_price * (100-item_percent) * 0.01
  • zip()ํ•จ์ˆ˜
    • ๊ธธ์ด๊ฐ€ ๊ฐ™์€ ๋ฆฌ์ŠคํŠธ๋ฅผ ์š”์†Œ๋ณ„๋กœ ๋ฌถ์–ด์„œ ํŠœํ”Œ ํ˜•ํƒœ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ๊ธธ์ด๊ฐ€ ๋‹ค๋ฅผ ๊ฒฝ์šฐ, ๊ฐ€์žฅ ์งง์€ ์š”์†Œ ๊ธฐ์ค€์œผ๋กœ ๋ฐ˜๋ณต๋ฌธ์ด ๋๋‚œ๋‹ค.
x = [1, 2, 3]
y = ['a', 'b', 'c']
z = ['๊ฐ€', '๋‚˜', '๋‹ค']

for i, j, k in zip(x, y, z):
    print('ํ˜„์žฌ i๋Š”', i, '์ด๊ณ , j๋Š”', j, '์ด๊ณ , k๋Š”', k, '์ž…๋‹ˆ๋‹ค.')

# ์ถœ๋ ฅ ๊ฒฐ๊ณผ
ํ˜„์žฌ i๋Š” 1 ์ด๊ณ , j๋Š” a ์ด๊ณ , k๋Š” ๊ฐ€ ์ž…๋‹ˆ๋‹ค.
ํ˜„์žฌ i๋Š” 2 ์ด๊ณ , j๋Š” b ์ด๊ณ , k๋Š” ๋‚˜ ์ž…๋‹ˆ๋‹ค.
ํ˜„์žฌ i๋Š” 3 ์ด๊ณ , j๋Š” c ์ด๊ณ , k๋Š” ๋‹ค ์ž…๋‹ˆ๋‹ค.

์ด์ œ ๋‚จ์€ ๋ฌธ์ œ ๊ฐœ์ˆ˜ (์–ธ์–ด : Python์œผ๋กœ ์„ค์ •)

๋ ˆ๋ฒจ ํ‘ผ ๋ฌธ์ œ ์•ˆ ํ‘ผ ๋ฌธ์ œ
0 99 0
1 70 0
2 58 37
3 6 58
4 0 22
5 0 7

 

728x90
๋ฐ˜์‘ํ˜•