๐Ÿ”ฌ Explore/ํŒŒ์ด์ฌ์„ ํŒŒ์ด์ฌ๋‹ต๊ฒŒ

[ํŒŒ์ด์ฌ์„ ํŒŒ์ด์ฌ๋‹ต๊ฒŒ] Part 02. ์ •์ˆ˜ ๋‹ค๋ฃจ๊ธฐ (Programmers)

devCloud 2023. 10. 16. 22:09
728x90

โ˜ ๋ฌธ์ œ 1

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

์ˆซ์ž a, b๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ a๋ฅผ b๋กœ ๋‚˜๋ˆˆ ๋ชซ๊ณผ a๋ฅผ b๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด ์ถœ๋ ฅํ•ด๋ณด์„ธ์š”.

 

์ œํ•œ ์กฐ๊ฑด

  • a์™€ b๋Š” ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.

 

์ž…์ถœ๋ ฅ ์˜ˆ

์ž…๋ ฅ ์˜ˆ์‹œ ์ถœ๋ ฅ ์˜ˆ์‹œ
5 3 1 2

โ˜‘ Solution

a, b = map(int, input().strip().split(' '))
print(str(int(a/b))+ " " + str(int(a%b)))

๋ชซ์„ ๊ตฌํ•˜๋Š” ๊ณผ์ •์—์„œ //์—ฐ์‚ฐ์ž๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฑธ ์žŠ์–ด๋จน๊ณ  ๋ฒˆ๊ฑฐ๋กœ์šด ์ง“์„ ํ–ˆ๋‹ค. ๋‹ค์Œ์€ ๋‹ค์‹œ ๊ณ ์นœ ์ฝ”๋“œ๋‹ค.

a, b = map(int, input().strip().split(' '))
print(str(a//b)+ " " + str(a%b))

 

โœ” Feedback โœ”

a, b = map(int, input().strip().split(' '))
print(*divmod(a, b))
  • packing/unpacking : ์‰ฝ๊ฒŒ ๋งํ•ด ๋ฌถ๊ณ  ํ‘ผ๋‹ค๋Š” ์˜๋ฏธ๋‹ค. (divmod์•ž์— *์„ ๋ถ™์—ฌ์ฃผ์ง€ ์•Š์œผ๋ฉด ( ) ๊ด„ํ˜ธ ์•ˆ์— ๋‹ต์ด ์ถœ๋ ฅ๋œ๋‹ค.)
  • divmod : ๋ชซ๊ณผ ๋‚˜๋จธ์ง€๋ฅผ ๊ตฌํ•œ๋‹ค.

 

์ฃผ์˜ํ•  ์  : ๋ฌด์กฐ๊ฑด divmod๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒŒ ์ข‹์€ ๋ฐฉ๋ฒ•์€ ์•„๋‹ˆ๋‹ค. ๊ฐ€๋…์„ฑ์ด๋‚˜, ํŒ€์˜ ์ฝ”๋“œ ์Šคํƒ€์ผ์— ๋”ฐ๋ผ์„œ, a//b, a%b์™€ ๊ฐ™์ด ์“ธ ๋•Œ๊ฐ€ ๋” ์ข‹์„ ์ˆ˜๋„ ์žˆ๋‹ค. ๋˜ํ•œ, divmod๋Š” ์ž‘์€ ์ˆซ์ž๋ฅผ ๋‹ค๋ฃฐ ๋•Œ๋Š” a//b, a%b ๋ณด๋‹ค ๋А๋ฆฝ๋‹ˆ๋‹ค. ๋Œ€์‹ , ํฐ ์ˆซ์ž๋ฅผ ๋‹ค๋ฃฐ ๋•Œ๋Š” ์ „์ž๊ฐ€ ํ›„์ž๋ณด๋‹ค ๋” ๋น ๋ฅด๋‹ค.


โ˜ ๋ฌธ์ œ 2

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

์ฒซ ๋ฒˆ์งธ ์ˆซ์ž๋Š” num์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ, ๋‘ ๋ฒˆ์งธ ์ˆซ์ž๋Š” base๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. 'base' ์ง„๋ฒ•์œผ๋กœ ํ‘œ๊ธฐ๋œ ์ˆซ์ž๋ฅผ 10์ง„๋ฒ• ์ˆซ์ž ์ถœ๋ ฅํ•ด๋ณด์„ธ์š”.

 

์ œํ•œ ์กฐ๊ฑด

  • base๋Š” 10 ์ดํ•˜์ธ ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.
  • num์€ 3000 ์ดํ•˜์ธ ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ

  • ์˜ˆ #1 3์ง„๋ฒ•์œผ๋กœ ํ‘œ๊ธฐ๋œ 12๋Š” 10์ง„๋ฒ•์œผ๋กœ ํ‘œํ˜„ํ•˜๋ฉด 5์ž…๋‹ˆ๋‹ค. ( 1*3 + 2 )
  • ์˜ˆ #2 5์ง„๋ฒ•์œผ๋กœ ํ‘œ๊ธฐ๋œ 444๋Š” 10์ง„๋ฒ•์œผ๋กœ ํ‘œํ˜„ํ•˜๋ฉด 124์ž…๋‹ˆ๋‹ค. ( 455 + 4*5 + 4 )

โ˜‘ Solution

num, base = map(int, input().strip().split(' '))
print(int(str(num),base))
  • int(๋ฌธ์ž์—ด, ๊ธฐ์กด n์ง„์ˆ˜) : 10์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ๋Š” ๋‚ด์žฅ ํ•จ์ˆ˜๋‹ค.

 

10์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•  ๋•Œ ์ฒซ ๋ฒˆ์งธ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋ฌธ์ž์—ด๋งŒ ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์— str()๋กœ ๋ณ€ํ™˜ํ–ˆ๋‹ค.
์˜ˆ์ „์— ์ด๋Ÿฐ ๋ฌธ์ œ๋ฅผ ํ‘ผ ์ ์ด ์žˆ์–ด ์–ด๋ ค์›€ ์—†์ด ํ’€์—ˆ๋‹ค. ๊ฐ•์˜ ๋…ธํŠธ์—์„œ๋„ ๋‚ด์žฅ ํ•จ์ˆ˜๋ฅผ ์“ฐ๋ผ๊ณ  ํ•ด์„œ ์˜๋„์— ๋งž๊ฒŒ ์ž˜ ํ‘ผ ๊ฒƒ ๊ฐ™๋‹ค.

728x90