틀린 코드
아스키코드를 써야하는 것만 감을 잡고 뼈대를 만들었다.
이 경우 n이 커지면 밀어도 다른 문자가 나온다.
알파벳 범위 내에서 돌려면 a,A를 이용한 수식이 필요하다.
(chr((ord(j)-ord('A')+n)%26+ord('A')))
def solution(s, n):
answer = []
word=s.split(" ")
for i in word:
part=[]
for j in i:
part.append(chr(ord(j)+n))
result ="".join(part)
answer.append(result)
answer=" ".join(answer)
return answer
수정 코드
def solution(s, n):
answer = []
word=s.split(" ")
for i in word:
part=[]
for j in i:
if j.islower():
part.append((chr((ord(j)-ord('a')+n)%26+ord('a'))))
else:
part.append((chr((ord(j)-ord('A')+n)%26+ord('A'))))
part="".join(part)
answer.append(part)
answer = " ".join(answer)
return answer
들여쓰기 실수해서 삽질함..;;;
내 코드
from itertools import combinations
def solution(number):
cnt = 0
for c in combinations(number, 3):
if sum(c) == 0:
cnt += 1
return cnt
숏코딩
아직...이해가 안 됐다.
저 not sum(c) 부분을 모르겠다.
from itertools import combinations
def solution(number):
return sum(not sum(c) for c in combinations(number, 3))
가로세로 신경 안 쓰는게 관건
def solution(sizes):
width = []
height = []
for i in range(len(sizes)):
width.append(max(sizes[i])) # 둘중에 큰걸 가로로
height.append(min(sizes[i])) #작은걸 세로로
return max(width)*max(height)
이걸 그냥 한줄로...ㅠㅠ
def solution(sizes):
return max(max(x) for x in sizes) * max(min(x) for x in sizes)
https://stackoverflow.com/questions/33541947/what-does-the-built-in-function-sum-do-with-sumlist
solution = lambda sizes: max(sum(sizes, [])) * max(min(size) for size in sizes)
0b가 붙은 이진수 변환
지정한 자리수에서 모자란 자리수에는 0을 채움
def solution(n, arr1, arr2):
answer = []
for i in range(n):
a = bin(arr1[i] | arr2[i])[2:].zfill(n)
b = a.replace("1", "#").replace("0", " ")
answer.append(b)
return answer
체력이 딸려서... 오늘은 여기까지...
하루에 정해놓은 최저 개수가 3개니까...