μμ Nμ μ΄μ§λ²μΌλ‘ λ°κΏ¨μ λ, μ°μμΌλ‘ μ΄μ΄μ§λ 0 μ€μμ κ°μ₯ ν° κ°μ returnν΄ μ£ΌμΈμ.
- μ΄μ΄μ§λ 0μ 1κ³Ό 1μ¬μ΄μ μλ κ²μ μλ―Έν©λλ€.
μ΄λ° κ²μ binary gap μ΄λΌκ³ ν©λλ€.
μλ₯Ό λ€μ΄,input: 9 output: 2 μ€λͺ : 9μ μ΄μ§μλ 1001 μ λλ€. 1κ³Ό 1μ¬μ΄μ μλ 0μ 2 μ΄λ―λ‘, 2λ₯Ό return - input: 9 output: 2 μ€λͺ : 9μ μ΄μ§μλ 1001 μ λλ€. 1κ³Ό 1μ¬μ΄μ μλ 0μ 2 μ΄λ―λ‘, 2λ₯Ό return - input: 529 output: 4 μ€λͺ : 529μ μ΄μ§μλ 1000010001 μ λλ€. 1κ³Ό 1μ¬μ΄μ μλ μ°μλ 0μ μλ 4μ 3μ λλ€. μ΄ μ€ ν° κ°μ 4μ΄λ―λ‘ 4λ₯Ό return - input: 529 output: 4 μ€λͺ : 529μ μ΄μ§μλ 1000010001 μ λλ€. 1κ³Ό 1μ¬μ΄μ μλ μ°μλ 0μ μλ 4μ 3μ λλ€. μ΄ μ€ ν° κ°μ 4μ΄λ―λ‘ 4λ₯Ό return - input: 20 output: 1 μ€λͺ : 20μ μ΄μ§μλ 10100 μ λλ€. 1κ³Ό 1μ¬μ΄μ μλ μ°μλ 0μ μλ 1 λΏμ λλ€. (λ€μ μλ 0μ 1μ¬μ΄μ μλ κ²μ΄ μλλ―λ‘) - input: 20 output: 1 μ€λͺ : 20μ μ΄μ§μλ 10100 μ λλ€. 1κ³Ό 1μ¬μ΄μ μλ μ°μλ 0μ μλ 1 λΏμ λλ€. (λ€μ μλ 0μ 1μ¬μ΄μ μλ κ²μ΄ μλλ―λ‘) - input: 15 output: 0 μ€λͺ : 15μ μ΄μ§μλ 1111 μ λλ€. 1κ³Ό 1μ¬μ΄μ μλ 0μ΄ μμΌλ―λ‘ 0μ return - input: 15 output: 0 μ€λͺ : 15μ μ΄μ§μλ 1111 μ λλ€. 1κ³Ό 1μ¬μ΄μ μλ 0μ΄ μμΌλ―λ‘ 0μ return - input: 32 output: 0 μ€λͺ : 32μ μ΄μ§μλ 100000 μ λλ€. 1κ³Ό 1μ¬μ΄μ μλ 0μ΄ μμΌλ―λ‘ 0μ return - input: 32 output: 0 μ€λͺ : 32μ μ΄μ§μλ 100000 μ λλ€. 1κ³Ό 1μ¬μ΄μ μλ 0μ΄ μμΌλ―λ‘ 0μ return ------------------------------------- nums: μ«μ λ°°μ΄ target: λ μλ₯Ό λν΄μ λμ¬ μ μλ ν©κ³ return: λ μμ indexλ₯Ό κ°μ§ μ«μ λ°°μ΄
μ€λλ μμλ μλ‘μ΄ μ κ°μ μ½λ μΉ΄ν!
μ ν κ°μ΄ μ€μ§λ₯Ό μμμ + λ΄κ° μ½ν μν κ°λ μ μ΄ν΄ν΄μΌν΄μ
μ°μ μ΄ λΈλ‘κ·Έλ₯Ό μ°Έκ³ νλ©°bin()
λ΄μ₯ν¨μλ₯Ό μ¬μ©ν΄λ³΄λ €κ³ νλλ° ππ» 2μ§μ, 8μ§μ, 10μ§μ, 16μ§μ λ³ννκΈ°
μ€λμ μ½λμΉ΄νλ 'λͺ¨μ¬μν¨κ»μ½λ©'μ΄μλ λ°λμ λ¬Έμ λ₯Ό νμ΄λ³Ό μ μμλ€ νννν³
(repl.itλ¬Έμ μλ건μ§.. λ€κ°μ΄ λμμ κ°μ νλ©΄μ λκ³ λ¬Έμ λ₯Ό νΈλ μν©..
μ΄κ±Έ λͺ¨λ₯΄κ³ λ€λ₯Έ μ¬λμ΄ νΌ μ½λλ₯Ό μΉ μ§μλ²λ¦° λμκΈ°... )
κ·Έλμ λκ° μκ°λ§ ν΄λκ³ model solution λ³΄λ¬ κ°λ€... νν³...
def solution(N):
binaryNumber = format(N, 'b')
maximum = 0
binaryNumberList = binaryNumber.strip('0').split('1')
for x in binaryNumberList:
if not x:
continue
if len(x) > maximum:
maximum = len(x)
return maximum
print(solution(3243))
μμλ μμνλλλ‘ μ
λ ₯λ°μ μ«μλ₯Ό λ΄μ₯ν¨μλ₯Ό μ¬μ©ν΄μ μ§ννλ κ²!!
but λ΄κ° μμνλ bin( )
ν¨μκ° μλ, format( )
ν¨μλ₯Ό μ¬μ©ν΄μ νμ΄λλ€.
μ€λλ μμλ λ΄μ₯ν¨μλ₯Ό λͺ°λλ λλ₯Ό μν μ 리μ μκ°! κΌ¬-
νμ΄μ¬μ κΈ°λ³Έ 10μ§μμ΄κΈ° λλ¬Έμ, λ€λ₯Έ μ§μλ μ λμ΄κ° λΆλλ€κ³ νλ€.
10μ§μμμ 2, 8, 16μ§μ λ³ννκΈ° κ³Όμ μμ μ°μΌ μ μλ μ«μ κ΄λ ¨ λ΄μ₯ν¨μλ€ μ 리νκΈ°!
bin()
, oct()
, hex()
λ΄μ₯ν¨μλ₯Ό μ¬μ©νλ€value = 60
b = bin(value)
o = oct(value)
h = hex(value)
print(b) --> # 0b111100
print(o) --> # 0o74
print(h) --> # 0x3c
κ²°κ³Όλ λͺ¨λ λ¬Έμμ΄ νμ μΌλ‘ λ°νλλ€κ³ νλ€.
value = 60
b = format(value, '#b')
o = format(value, '#o')
h = format(value, '#h')
print(b) --> # 0b111100
print(o) --> # 0o74
print(h) --> # 0x3c
μ΄λ κ² μΆλ ₯νλ©΄ 1λ²μ κ²½μ°μ λκ°μ΄ λ¬Έμμ΄λ‘ μΆλ ₯μ΄ λκ³ ,
value = 60
b = format(value, 'b')
o = format(value, 'o')
h = format(value, 'h')
print(b) --> # 111100
print(o) --> # 74
print(h) --> # 3c
λλ²μ§Έ μΈμμμ #μ μ κ±°νλ©΄ μ λμ΄κ° λΉ μ§ κ²°κ³Όκ° μΆλ ₯λλ€. (λ³νλ κ° κ·Έ μμ²΄λ§ νμν κ²½μ° μ¬μ©)
2, 8, 16μ§μμμ 10μ§μλ‘ λ³ννλ λ°©λ²!
λ³ννκ³ μ νλ μ§μμ νμ
μ λ¬Έμμ΄μ΄λ©°, λ°νλλ 10μ§μλ μ μνμ
μΌλ‘ 리ν΄λλ€.
b = int('0b111100' , 2)
o = int('0o74' , 8)
h = int('0x3c' , 16)
print(b) --> # 60
print(o) --> # 60
print(h) --> # 60
int()
ν¨μμ 첫λ²μ§Έ μΈμλ λ³ννκ³ μ νλ μ§μ, λλ²μ§Έ μΈμλ 첫λ²μ§Έ μΈμμ μ§μ νν!
(λλ²μ§Έ μΈμμ λ€μ΄κ° μ§μ ννλ₯Ό μλͺ» μ
λ ₯νλ©΄ μλ¬κ° λ°μνλ€)
2μ§μμμ 8μ§μλ‘ λ³ννλ κ²κ³Ό κ°μ΄ λ³ννλ λ°©λ².
λ³ννκ³ μ νλ μ§μμ νμ
μ μ μμ΄λ©°, λ°νλλ νμ
μ λ¬Έμμ΄μ΄λ€. (3-1μ κ²½μ°μ λ°λ!)
o = oct(0b111100)
h = hex(0b111100)
s = str(0b111100)
print(o) --> # 0o74
print(h) --> # 0x3c
print(s) --> # 60
λ¬Έμμ΄μμ μ 곡νλ format()
λ©μλλ₯Ό μ¬μ©ν΄μ λ³ννλ λ°©λ²!
s = "2μ§μ:{0:#b}, 8μ§μ:{0:#o}, 10μ§μ:{0:#d}, 16μ§μ:{0:#x}".format(60)
print(s) --> # 2μ§μ: 0b111100, 8μ§μ: 0o74, 10μ§μ: 60, 16μ§μ: 0x3c
μ¬κΈ°μλ μμ κ²½μ°μ λ§μ°¬κ°μ§λ‘ #μ μ κ±°νλ©΄ μ λμ΄κ° λΉ μ§ ννλ‘ λ°νλλ€.
s = "2μ§μ:{0:b}, 8μ§μ:{0:o}, 10μ§μ:{0:d}, 16μ§μ:{0:x}".format(60)
print(s) --> # 2μ§μ: 111100, 8μ§μ: 74, 10μ§μ: 60, 16μ§μ: 3c
model solutionμ 보면, 1μ κΈ°μ€μΌλ‘ split()
νκ³ , κ·Έ μ΄μ μ strip()
μ΄λΌλ ν¨μκ° λμ¨λ€.
λ¬Έμ λ λ strip()
μ΄ λ¬΄μ¨ ν¨μμΈμ§ λͺ¨λ₯Έλ€λ κ²..!!!! μ΄ κΈ°νλ₯Ό λμΉμ§ μκ³ λ΄μΉκΉμ λ¬Έμμ΄ κ΄λ ¨ λ΄μ₯ν¨μ μ 리 κ°λλ·
ππ» λ¬Έμμ΄ ν¨μ: read(), strip(), replace()
λ΄κ° κ°μ§ λ¬Έμμ΄ λ°μ΄ν°λ₯Ό λΌμΈ κ΅¬λΆ μμ΄, λͺ¨λ λ΄μ©μ νκΊΌλ²μ μ°κ²°ν΄μ ννν΄μ€λ€.
λ΄κ° νμν λ°μ΄ν°κ° ACGTλ‘ μ΄λ£¨μ΄μ§ λ°μ΄ν°λΌκ³ κ°μ νκ³ μ΄λ₯Ό μΆμΆνλ €λ©΄ μ΄λ»κ² ν΄μΌν κΉ?
ππ» β©nμ΄λΌλ μν°μ ν΄λΉνλ νΉμ κΈ°νΈλ₯Ό μμ νκ³ , 맨 μμ headerλ₯Ό λ λ €μ£Όμ΄μΌ νλ€.
μ§κΈμ²λΌ μ
λ ₯λ°μ λ¬Έμμ΄μ΄ μμ λ, strip()
ν¨μλ₯Ό μ¬μ©νλ©΄ 곡백, β©n κΈ°νΈλ₯Ό μμ ν κ²°κ³Όλ¬Όμ νμΈν μ μλ€.
νμ§λ§ strip()
ν¨μλ λ¬Έμμ΄ μ€κ°μ μ‘΄μ¬νλ κ²μ μ κ±°ν΄μ£Όμ§ μλλ€.
μ΄λ κ² λ¬Έμμ΄ μ€κ°μ κ²λ€μ μ κ±°λμ§ μμ κ²μ νμΈν μ μλ€.
μ΄λ΄λ μ¬μ©νλκ²μ΄ replace()
ν¨μ! μ΄λ¦ κ·Έλλ‘ λ체νλ€λ λ»μΌλ‘, 첫λ²μ§Έ μΈμλ₯Ό λλ²μ§Έ μΈμλ‘ λ체νλ κ²μ΄λ€.
첫λ²μ§Έλ‘λ headerμ λ¬Έμμ΄μ κ·Έλλ‘ μ
λ ₯νκ³ , ""μ λλ²μ§Έ μΈμλ‘ μ
λ ₯ν΄μ header --> ""
λ‘ λ체νλλ‘ νμλ€.
κ·Έ μ΄νμ λ replace()
ν¨μλ₯Ό μ¬μ©ν΄μ β©nμ μ κ±°νλ©΄ μνλ κ²λ€μ μ°¨λ‘λ‘ λͺ¨λ μ κ±°ν μ μλ€.