J1Yun
ZU-TECHLOG
J1Yun
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๐Ÿ“‘ Category (135)
    • Algorithm (61)
      • ๐Ÿ“š Concept (6)
      • ๐Ÿ“˜ Baekjoon Judge (53)
      • ๐Ÿ“— Programmers (2)
    • Computer Science (42)
      • ๐Ÿ”’ Operating System (14)
      • ๐Ÿ“ก Network (15)
      • ๐Ÿ’พ Database (8)
      • ๐Ÿงฉ Design Pattern (4)
      • ๐Ÿ”‘ Security (1)
    • Activities (12)
      • ๐Ÿฆ ๋ฉ‹์Ÿ์ด์‚ฌ์ž์ฒ˜๋Ÿผ 9๊ธฐ (6)
      • ๐Ÿ’ป SW๋งˆ์—์ŠคํŠธ๋กœ 13๊ธฐ (6)
    • Infra (1)
      • โ˜๏ธ AWS (1)
    • Languages (1)
      • ๐Ÿ’™ Python (1)
    • Backend (7)
      • ๐Ÿ”ต Django (4)
      • ๐ŸŸข Node.js (3)
    • Ect. (8)
      • ๐Ÿ’ฌ Talk (0)
      • ๐Ÿ—‚๏ธ ๊ฐœ๋ฐœ์ง๊ตฐ ์ทจ์—… ์ค€๋น„์ž๋ฃŒ (8)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • ํƒœ๊ทธ
  • ๋ฐฉ๋ช…๋ก

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

250x250
hELLO ยท Designed By ์ •์ƒ์šฐ.
J1Yun

ZU-TECHLOG

[BOJ] ๋ฐฑ์ค€ 3107๋ฒˆ IPv6 - ํŒŒ์ด์ฌ(Python)
Algorithm/๐Ÿ“˜ Baekjoon Judge

[BOJ] ๋ฐฑ์ค€ 3107๋ฒˆ IPv6 - ํŒŒ์ด์ฌ(Python)

728x90

๋ฌธ์ œ

IPv6์€ ๊ธธ์ด๊ฐ€ 128๋น„ํŠธ์ธ ์ฐจ์„ธ๋Œ€ ์ธํ„ฐ๋„ท ํ”„๋กœํ† ์ฝœ์ด๋‹ค.

IPv6์˜ ์ฃผ์†Œ๋Š” 32์ž๋ฆฌ์˜ 16์ง„์ˆ˜๋ฅผ 4์ž๋ฆฌ์”ฉ ๋Š์–ด ๋‚˜ํƒ€๋‚ธ๋‹ค. ์ด๋•Œ, ๊ฐ ๊ทธ๋ฃน์€ ์ฝœ๋ก  (:)์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ๋‚˜ํƒ€๋‚ธ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด, ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

2001:0db8:85a3:0000:0000:8a2e:0370:7334

32์ž๋ฆฌ์˜ 16์ง„์ˆ˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ๊ณ  ์“ฐ๊ธฐ์— ๋ถˆํŽธํ•˜๊ณ , ๋Œ€๋ถ€๋ถ„์˜ ์ž๋ฆฌ๊ฐ€ 0์ด๊ธฐ ๋•Œ๋ฌธ์— ์•„๋ž˜์™€ ๊ฐ™์ด ์ถ•์•ฝํ•  ์ˆ˜ ์žˆ๋‹ค.

 

1. ๊ฐ ๊ทธ๋ฃน์˜ ์•ž์ž๋ฆฌ์˜ 0์˜ ์ „์ฒด ๋˜๋Š” ์ผ๋ถ€๋ฅผ ์ƒ๋žต ํ•  ์ˆ˜ ์žˆ๋‹ค. ์œ„์˜ IPv6์„ ์ถ•์•ฝํ•˜๋ฉด, ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

2001:db8:85a3:0:00:8a2e:370:7334

 

2. ๋งŒ์•ฝ 0์œผ๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ๋Š” ๊ทธ๋ฃน์ด ์žˆ์„ ๊ฒฝ์šฐ ๊ทธ ์ค‘ ํ•œ ๊ฐœ ์ด์ƒ ์—ฐ์†๋œ ๊ทธ๋ฃน์„ ํ•˜๋‚˜ ๊ณจ๋ผ ์ฝœ๋ก  2๊ฐœ(::)๋กœ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‹ค.

2001:db8:85a3::8a2e:370:7334

 

2๋ฒˆ์งธ ๊ทœ์น™์€ ๋ชจํ˜ธํ•จ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์˜ค์ง ํ•œ ๋ฒˆ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

์˜ฌ๋ฐ”๋ฅธ ์ถ•์•ฝํ˜• IPv6์ฃผ์†Œ๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ด๋ฅผ ์›๋ž˜ IPv6 (32์ž๋ฆฌ์˜ 16์ง„์ˆ˜)๋กœ ๋ณต์›ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

์ž…๋ ฅ

์ฒซ์งธ ์ค„์— ์˜ฌ๋ฐ”๋ฅธ IPv6 ์ฃผ์†Œ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด ์ฃผ์†Œ๋Š” ์ตœ๋Œ€ 39๊ธ€์ž์ด๋‹ค. ๋˜ํ•œ, ์ฃผ์†Œ๋Š” ์ˆซ์ž 0-9, ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž a-f, ์ฝœ๋ก  :์œผ๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค.

์ถœ๋ ฅ

์ฒซ์งธ ์ค„์—, ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง„ IPv6์˜ ์ถ•์•ฝ๋˜์ง€ ์•Š์€ ํ˜•ํƒœ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

 

https://www.acmicpc.net/problem/3107

 

3107๋ฒˆ: IPv6

์ฒซ์งธ ์ค„์— ์˜ฌ๋ฐ”๋ฅธ IPv6 ์ฃผ์†Œ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด ์ฃผ์†Œ๋Š” ์ตœ๋Œ€ 39๊ธ€์ž์ด๋‹ค. ๋˜ํ•œ, ์ฃผ์†Œ๋Š” ์ˆซ์ž 0-9, ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž a-f, ์ฝœ๋ก  :์œผ๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค.

www.acmicpc.net

 

๐Ÿ’ก ํ’€์ด ๋ฐ ์ฝ”๋“œ

ipv6 = input()
ipv6 = ipv6.split(':')
if ipv6[0] == '':
    ipv6 = ipv6[1:]
if ipv6[-1] == '':
    ipv6 = ipv6[:-1]

result = ''
for i in ipv6:
    if i=='':
        result += '0000:'*(8-len(ipv6)+1)
    else:
        result += i.zfill(4)+':'

print(result[:-1])

๋ฌธ์ž์—ด์„ ํ™œ์šฉํ•œ ๊ตฌํ˜„ ๋ฌธ์ œ์ด๋‹ค. ์ตœ๋Œ€ํ•œ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ํ’€๋ ค๊ณ  ๋…ธ๋ ฅํ–ˆ๋‹ค. 

๋จผ์ € ์ž…๋ ฅ๋ฐ›์€ ๋ฌธ์ž์—ด์„ ':' ๋‹จ์œ„๋กœ splitํ•˜๊ณ , '::'๋กœ ์ธํ•ด ๋งŒ๋“ค์–ด์ง„ ๋ฆฌ์ŠคํŠธ์— ๋นˆ ๋ฌธ์ž์—ด์ด ๋‘ ๊ฐœ ์ด์ƒ ์ €์žฅ๋˜๋Š” ์˜ˆ์™ธ๋ฅผ ๋งŒ๋“ค์ง€ ์•Š๊ธฐ ์œ„ํ•ด ๋ฆฌ์ŠคํŠธ์˜ ๋งจ ์•ž๊ณผ ๋งจ ๋’ค์— ๋นˆ ๋ฌธ์ž์—ด์ด ์žˆ์„ ๊ฒฝ์šฐ( ex. '::a' ) ํ•ด๋‹น ๋นˆ ๋ฌธ์ž์—ด์€ ๋ฌด์‹œํ•˜๊ณ  ์ €์žฅํ•œ๋‹ค. ์ดํ›„ ๋ฆฌ์ŠคํŠธ ์†์˜ ๋ฌธ์ž์—ด์ด ๋นˆ ๋ฌธ์ž์—ด์ด๋ผ๋ฉด '0000'์„ ๋ถ€์กฑํ•œ ์ž๋ฆฟ์ˆ˜ ๋งŒํผ ์ฑ„์›Œ์ฃผ๊ณ , ๋นˆ ๋ฌธ์ž์—ด์ด ์•„๋‹ˆ๋ผ๋ฉด zfill ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด 4์ž๋ฆฌ ์ˆ˜๋ฅผ ๋งž์ถ”์–ด 0์„ ์ฑ„์›Œ์ฃผ๋ฉด ๋œ๋‹ค.

 

 

728x90

'Algorithm > ๐Ÿ“˜ Baekjoon Judge' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[BOJ] ๋ฐฑ์ค€ 16400๋ฒˆ ์†Œ์ˆ˜ ํ™”ํ - ํŒŒ์ด์ฌ(Python)  (0) 2021.12.31
[BOJ] ๋ฐฑ์ค€ 2293๋ฒˆ ๋™์ „1 - ํŒŒ์ด์ฌ(Python)  (0) 2021.12.31
[BOJ] ๋ฐฑ์ค€ 7562๋ฒˆ ๋‚˜์ดํŠธ์˜ ์ด๋™ - ํŒŒ์ด์ฌ(Python)  (0) 2021.12.29
[BOJ] ๋ฐฑ์ค€ 9465๋ฒˆ ์Šคํ‹ฐ์ปค - ํŒŒ์ด์ฌ(Python)  (0) 2021.11.24
[BOJ] ๋ฐฑ์ค€ 1202๋ฒˆ ๋ณด์„ ๋„๋‘‘ - ํŒŒ์ด์ฌ(Python)  (0) 2021.11.23
    'Algorithm/๐Ÿ“˜ Baekjoon Judge' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€์ด๋‹ค
    • [BOJ] ๋ฐฑ์ค€ 16400๋ฒˆ ์†Œ์ˆ˜ ํ™”ํ - ํŒŒ์ด์ฌ(Python)
    • [BOJ] ๋ฐฑ์ค€ 2293๋ฒˆ ๋™์ „1 - ํŒŒ์ด์ฌ(Python)
    • [BOJ] ๋ฐฑ์ค€ 7562๋ฒˆ ๋‚˜์ดํŠธ์˜ ์ด๋™ - ํŒŒ์ด์ฌ(Python)
    • [BOJ] ๋ฐฑ์ค€ 9465๋ฒˆ ์Šคํ‹ฐ์ปค - ํŒŒ์ด์ฌ(Python)
    J1Yun
    J1Yun
    ๊ฐœ๋ฐœ ๊ด€๋ จ ๊ธฐ์ˆ  ๋ฐ ๊ณต๋ถ€ ๋‚ด์šฉ ๊ธฐ๋ก์žฅ

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”