===py code===
def solution(x, n):
answer = []
for i in range(n+1):
if i != 0:
i *= x
answer.append(i)
return answer
===js code===
function solution(x, n) {
let answer = [];
for(let i=0; i<n+1; i++)
if (i != 0){
answer.push(i*x)
}
return answer;
}
11번 문제는 n만큼 for loop을 돌려서 x*n을 arr에 넣어줬다 파이썬에서는 append라는 함수를 사용했는데 js에서 순간 append가 안되서 당황했다. 구글링을 해본 결과 push...
14.나누어 떨어지는 숫자 배열
===py code===
def solution(arr, divisor):
answer = []
for i in arr:
if i % divisor == 0 :
answer.append(i)
answer.sort()
if answer == []:
answer.append(-1)
return answer
14번 arr에서 for를 사용해 divisor가 나누어 지면 answer에 추가하고 다시 정렬해 주었다.
다 끝나고 arr가 empty라면 그냥 -1를 추가해줬다 풀만 했다. 하지만 js로 구현하지 못했다. 뭐가 문제일까 나중에 다시 한번 봐야겠다.
15.내적
===py code===
def solution(a, b):
answer = 0
for i in range(len(a)):
answer += a[i] * b[i]
return answer
===js code===
function solution(a, b) {
let answer = 0;
for(let i=0; i < a.length; i++)
answer += a[i] * b[i]
return answer;
}
15번 문제를 보니까 a b 두개 모두 같은 배열의 길이를 가지고 있어서 for를 사용해 곱해준 다음에 answer에 넣어줬다. 처음 접할 땐 이해하려고 시간이 걸렸는데 막상 풀어보니 굉장히 쉬운문제였다. 가장 쉬었던 문제가 아니었을까...
16.문자열 내 p와 y의 개수
===py code===
def solution(s):
answer = True
if s.count("p")+s.count("P") != s.count("y")+s.count("Y"):
answer = False
return answer
16번은 대문자 P, Y와 소문자 p,y 예를 들어 PPpoooyYY가 주어지는데 p와 y의 개수가 같으면 True를 아니면 False를 return 해주는 것 팀원 중 한 분이 문자열을 전부 소문자로 바꾸어 했다고 했는데 나도 .lower()로 해봤으나 이상하게 오류가 난다... 왜 이럴까..js로 아직 구현하지 못했다.
9,10,12,13은 아직 풀지 못했다. 그냥 답안을 볼까 했는데 16일 하루만 더 해보고 안되면 답안을 보겠다.
arr 또는 string의 len을 이용하여 for 사용 점점 익숙해져 간다. 알고리즘에 좀 더 가까워 진다.