-
Day3
๋ฌธ์์ด ์๊ธฐ
๋ฌธ์
๊ธธ์ด๊ฐ ๊ฐ์ ๋ ๋ฌธ์์ด str1๊ณผ str2๊ฐ ์ฃผ์ด์ง๋๋ค. ๋ ๋ฌธ์์ด์ ๊ฐ ๋ฌธ์๊ฐ ์์์๋ถํฐ ์๋ก ๋ฒ๊ฐ์๊ฐ๋ฉด์ ํ ๋ฒ์ฉ ๋ฑ์ฅํ๋ ๋ฌธ์์ด์ ๋ง๋ค์ด return ํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.
์ ์ถ๋ ฅ ์์
ํ์ด
def solution(str1, str2): new_list=[] a=list(str1) b=list(str2) for i in range(len(str1)): new_list.append(a[i]) new_list.append(b[i]) return ''.join(new_list)
- ์๊ฐ๋ณด๋ค.. ์ค๋ ๊ฑธ๋ ธ๋ ๋ฌธ์
- ๋นํจ์จ์ ์ธ ๋ฐฉ์์ด์์ง๋ง list()ํจ์๋ก ๋ฌธ์์ด์ ํ๋ํ๋ ์ชผ๊ฐ๊ณ , ๋ค์ ๋ฐ๋ณต๋ฌธ์ผ๋ก aํ๋ bํ๋์ฉ ๋ฃ์ด์ค ํ ์ด๊ฑฐ๋ฅผ join() ํจ์๋ก ๋ค์ ํฉ์ณ์ค๋ค๋ ์๊ฐ์ผ๋ก ์ ๊ทผํ๋ค.
- ๋ฌธ์์ด์ ํ๋์ฉ ์ชผ๊ฐค๋๋ ๋ฆฌ์คํธ ํจ์, ๋ฆฌ์คํธ๋ฅผ ๋ฌธ์์ด๋ก ํ๋๋ก ํฉ์ณ์ค๋๋ ์กฐ์ธ ํจ์! ๊ฑฐ๊พธ๋ก์ธ ๋๋์ผ๋ก ๊ธฐ์ตํ์.
- ๋ค๋ฅธ ์ฌ๋ ํ์ด๋ฅผ ๋ณด๋๊น ๊ตณ์ด ๋ฆฌ์คํธ๋ก ์ชผ๊ฐค ํ์๊ฐ ์์๋ค… ๋น ๋ฌธ์์ด์ ๋ง๋ ํ ๋ฌธ์์ด ์ธ๋ฑ์ฑ์ผ๋ก ๋ฐ๋ก ๋ฃ์ด์ฃผ์!
๋ฆฌ๋ง์ธ๋
- list() : ๋ฌธ์์ด์ ํ๋ํ๋์ฉ ์๋ฅด๊ณ ์ถ์ ๋
- ‘’.join(list): ๋ฆฌ์คํธ ํ๋ํ๋๋ฅผ ๋ฌธ์์ด๋ก ํฉ์น๊ณ ์ถ์ ๋
- ๋ฌธ์์ด๋ ์ธ๋ฑ์ฑ ๊ฐ๋ฅ
- string[start:end:step]: start ์ธ๋ฑ์ค๋ถํฐ end-1 ์ธ๋ฑ์ค ๋ฒ์ ๋ด์ step๊ฐ๊ฒฉ์ผ๋ก ์ฌ๋ผ์ด์ฑ
- range() : ๋ฒ์๋ฅผ ๋ง๋ค ๋ ์ฌ์ฉ
- for i in range(5)
ํธ๋ฌ๋ธ ์ํ
IndexError: list index out of range
- ๋ฐ๋ณด๊ฐ์ด range๋ฒ์๋ฅผ 5๋ก ํด์ผ๋๋๋ฐ 10์ผ๋ก ์ก์๋ค.
๋ค๋ฅธ์ฌ๋ ํ์ด
#1 def solution(str1, str2): answer = '' for i in range(len(str1)): answer = answer + str1[i] + str2[i] return answer #2 def solution(str1, str2): return ''.join(i+j for i,j in zip(str1,str2))
- zip(iterable) : ์ํ ๊ฐ๋ฅํ ๊ฐ์ฒด๋ฅผ ์ธ์๋ก ๋ฐ๊ณ ๊ฐ ์๋ฃํ์ ๊ฐ๊ฐ์ ์์๋ฅผ ๋๋ํ ์ธ๋ฑ์ค๋ผ๋ฆฌ ์๋ผ์ ๋ฆฌ์คํธ๋ก ๋ฐํํด์ค๋ค.
- iterable ์๋ฃํ:
- str1[i] ํด์ ๋ฆฌ์คํธ์ ๋ฐ๋ก ๋ฃ์ด์ค ์ ์๋ค. ๊ตณ์ด ๋ฆฌ์คํธ๋ก ๋ฐ๊พธ๋ ํจ์ ์ ์จ๋ ๋๋ค.
๋ฌธ์ ๋ฆฌ์คํธ๋ฅผ ๋ฌธ์์ด๋ก ๋ณํํ๊ธฐ
๋ฌธ์
๋ฌธ์๋ค์ด ๋ด๊ฒจ์๋ ๋ฐฐ์ด arr๊ฐ ์ฃผ์ด์ง๋๋ค. arr์ ์์๋ค์ ์์๋๋ก ์ด์ด ๋ถ์ธ ๋ฌธ์์ด์ return ํ๋ solutionํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.
ํ์ด
def solution(arr): answer='' for i in arr: answer+=i return answer
๋ฆฌ๋ง์ธ๋
- ์ ์๊พธ joinํจ์๋ฅผ ๋ชป ๋ ์ฌ๋ฆด๊น! ๋ฆฌ์คํธ๋ฅผ ๋ฌธ์์ด๋ก ํฉ์น ๋๋ ๊ผญ joinํจ์๋ฅผ ๋ ์ฌ๋ฆฌ์..
๋ค๋ฅธ์ฌ๋ ํ์ด
def solution(arr): return ''.join(arr)
๋ฌธ์์ด ๊ณฑํ๊ธฐ
๋ฌธ์
๋ฌธ์์ด my_string๊ณผ ์ ์ k๊ฐ ์ฃผ์ด์ง ๋, my_string์ k๋ฒ ๋ฐ๋ณตํ ๋ฌธ์์ด์ return ํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.
ํ์ด
def solution(my_string, k): return my_string*k
๋ ํฌ๊ฒ ํฉ์น๊ธฐ
๋ฌธ์
์ฐ์ฐ ⊕๋ ๋ ์ ์์ ๋ํ ์ฐ์ฐ์ผ๋ก ๋ ์ ์๋ฅผ ๋ถ์ฌ์ ์ด ๊ฐ์ ๋ฐํํฉ๋๋ค. ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค. 12 ⊕ 3 = 123 3 ⊕ 12 = 312 ์์ ์ ์ a์ b๊ฐ ์ฃผ์ด์ก์ ๋, a ⊕ b์ b ⊕ a ์ค ๋ ํฐ ๊ฐ์ return ํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์. ๋จ, a ⊕ b์ b ⊕ a๊ฐ ๊ฐ๋ค๋ฉด a ⊕ b๋ฅผ return ํฉ๋๋ค.
ํ์ด
def solution(a, b): x=int(str(a)+str(b)) y=int(str(b)+str(a)) if x>y: return x elif x<y: return y else: return x
๋ค๋ฅธ์ฌ๋ ํ์ด
#1 def solution(a, b): return int(max(f"{a}{b}", f"{b}{a}")) #2 def solution(a, b): a, b = str(a), str(b) return int(max(a+b, b+a))
๋ฆฌ๋ง์ธ๋
- ์ ์๋ฅผ ๋ฌธ์์ด๋ก ๋ณํ์ํค๋ ํจ์๋ string()์ด ์๋๋ผ str()์ด๋ค..
- ํ์ด์ฌ์ ๋ด์ฅํจ์ ๋๋ฌด ๋ง๋ค. max(a,b)๋ a์ b์ค์ ๋ ํฐ ๊ฐ์ ๋ฐํํด์ฃผ๊ณ , ๋ฌธ์์ด์๋ ์ฌ์ฉ ๊ฐ๋ฅํ๋ค.
- f์คํธ๋ง์ ์๊พธ ๊น๋จน๋๋ค.
- ๊ทผ๋ฐ 1๋ฒ์ฒ๋ผ ํ๋ฉด a,b๊ฐ์ ๋ฐ๋ผ ๊ฒฐ๊ณผ๊ฐ ์๋ชป ๋์ค๋ ๊ฒฝ์ฐ๊ฐ ์๋ค๊ณ ํ๋ค. f"{a}{b}"์ f"{b}{a} ์ ๊ฐ๊ฐ int๋ฅผ ์์์ฃผ์ด์ผ ํ๋ค.
๋ ์์ ์ฐ์ฐ๊ฐ ๋น๊ตํ๊ธฐ
๋ฌธ์
์ฐ์ฐ ⊕๋ ๋ ์ ์์ ๋ํ ์ฐ์ฐ์ผ๋ก ๋ ์ ์๋ฅผ ๋ถ์ฌ์ ์ด ๊ฐ์ ๋ฐํํฉ๋๋ค. ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค. 12 ⊕ 3 = 123 3 ⊕ 12 = 312 ์์ ์ ์ a์ b๊ฐ ์ฃผ์ด์ก์ ๋, a ⊕ b์ 2 * a * b ์ค ๋ ํฐ ๊ฐ์ returnํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์. ๋จ, a ⊕ b์ 2 * a * b๊ฐ ๊ฐ์ผ๋ฉด a ⊕ b๋ฅผ return ํฉ๋๋ค.
ํ์ด
def solution(a, b): if int(str(a)+str(b))<=2*a*b: return 2*a*b else: return int(str(a)+str(b))
ํธ๋ฌ๋ธ ์ํ
- ์์ ๋ฌธ์ ์์ ๋ฐฐ์ด๊ฑฐ ์ ์ฉํด์ ํ ์คํธ๋ ํต๊ณผํ๋๋ฐ,
- ์ ํ์ฑ ํ ์คํธ์์๋ ํต๊ณผ๋ฅผ ๋ชปํ๋ค!! ๊ฒฐ๊ณผ์ ์ผ๋ก ์คํจ! ๋ ์์ค์น ์ด๋ฐ ๊ฑด ์ฒ์์ด๋ค
- ๋ฌธ์์ด์ ๋์๋น๊ตํ ๋ ๋ฌธ์ ๊ฐ ์๊ธฐ๋๋ณด๋ค. a์ b์ ๊ฐ์ ๋ฐ๋ผ ๊ฒฐ๊ณผ๊ฐ ์๋ชป ๋์ค๋ ๊ฒฝ์ฐ๊ฐ ์๋ค๊ณ ํ๋ค. ๊ทธ๊ฒ ์ด๋ค ๊ฒฝ์ฐ์ง? ์ด๊ฑฐ ์ด์ ๋ ์ข ๋ ์๊ฐํด๋ด์ผ๊ฒ ๋ค
๋ค๋ฅธ์ฌ๋ ํ์ด
def solution(a, b): return max(int(str(a) + str(b)), 2 * a * b)
'๐ญ Study > : Programmas' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ์ฝ๋ฉ ๊ธฐ์ด ํธ๋ ์ด๋ Day2 (0) 2024.02.08 [ํ๋ก๊ทธ๋๋จธ์ค] ์ฝ๋ฉ ๊ธฐ์ด ํธ๋ ์ด๋ Day1 (1) 2024.02.08 ๋๊ธ