분류 전체보기521 [ 자바스크립트(JS), 파이썬(python) ] 프로그래머스 level1 - 행렬의 덧셈 📌 행렬의 덧셈 행과 열의 크기가 같은 2차원의 두 행렬을 서로 더한 결과를 반환하는 문제이다. 1️⃣ 파이썬(python) 풀이 1차원 리스트를 더할 때는 어렵지 않았는데, 2차원끼리 더하려고 하니까 조금 어려웠다. 나는 zip함수를 사용했는데, temp에 zip으로 꺼내온 원소들을 더하고 빈 리스트에 append시켰다. 한 번 돌게 되면 temp를 다시 빈 리스트로 초기화 시키게끔 작성했다. 이 코드는 for range(len)문을 사용하는 것보다 코드의 길이가 아주 조금 줄었지만 가독성이 좋다고 생각하지 않았다. 다른 사람의 코드 중 map과 zip(*x)를 활용한 코드가 마음에 들었다. map은 리스트의 요소를 지정된 함수로 처리해주는 함수이다. 프로그래머스 문제를 풀다 보면 많이 접하는 함수이다.. 2021. 4. 1. [ 파이썬(python) ] 코드업 - python 기초 100제 ✏️ 서론 백준 알고리즘을 풀다가 조금 어렵다고 생각되어, 기본을 다시 다져보자는 의미에서 코드업의 python 기초 100제를 풀어보았다. 문제를 풀면서 기존에 알고 있었던 내용들은 과감하게 삭제했고 내가 모르는 문제 혹은 앞으로 비슷한 유형이 나왔을 때 어떤 방법으로 접근해야할지 알아야겠다 싶은 문제들을 작성해봤다. ✏️ 본론 📍 코드업 100문제를 풀면서 알아두면 좋을 팁들 무조건 소숫점 n번째자리까지 출력하는문제는 '%.nf'를 쓰자. bool()형태(True, False)로 반환할 때는 bool(n)을 사용하자. python 정수형에서 0(False)을 제외한 나머지는 True다. 0 and 0 == False AND(&), OR(|), XOR(^), NOT(~) 한 줄 비교식 print(a i.. 2021. 4. 1. [ 자바스크립트(JS), 파이썬(python) ] 프로그래머스 level1 - 콜라츠 추측 📌 콜라츠 추측 주어진 수가 1이 될 때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측이다. 입력된 수가 짝수라면 2로 나눕니다. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다. 💡 나의 풀이 이전에 백준인가 어디서 한번 풀어봤던 문제였다. while문을 사용하면 쉽게 해결 할 수 있다. 해결 과정은 다음과 같다. n이 짝수 일 때, 기존 n에 2로 나눈 몫을 n으로 저장한다. n이 홀수 일 때, 기존 n에 3을 곱하고 1을 더한 n으로 저장한다. 1번과 2번의 과정을 거쳤다면 cnt를 1 증가시킨다. 만약, cnt가 500번 이상일때는 -1을 반환시키고 종료한다. n이 1보다 작거나 같아진다면 while문을 종료시킨다. JS.. 2021. 3. 31. [ 파이썬(python) ] 프로그래머스 level1 - 자릿수 더하기 📌 자릿수 더하기 int형으로 주어진 수의 각 자리수의 합을 더하는 문제이다. 💡 나의 풀이 list comprehension으로 사용해야겠다는 생각을 했는데, 값을 누적하는 코드(result+=i)를 어떻게 구현해야할지 잘 몰랐다. 그냥 result 빼고 나열된 원소를 sum으로 구하면된다. 한줄로 표현 할 수 있기 때문에, 2번과 3번은 알고있으면 많이 도움이 될 것 같다. for문을 이용한 방법 list comprehension을 이용한 방법 map함수를 이용한 방법 # 방법1 def solution(s): result = 0 for i in str(s): result += int(i) return result # 방법2 def solution(s): return sum([int(i) for i i.. 2021. 3. 31. [ 파이썬(python) ] 프로그래머스 level1 - 정수 내림차순으로 배치하기 📌 정수 내림차순으로 배치하기 자리수를 큰 것부터 작은 순으로 정렬한 새로운 정수를 리턴하라. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 💡 나의 풀이 이전에 풀었던 자리수 더하기 문제와 비슷하게 자리수를 정렬하려면 문자형(str)으로 접근하는것이 핵심포인트다. 이후, sorted를 사용해 정렬하고 나중에는 ''.join을 이용해 하나로 뭉쳐줬다. 하지만 문제에서 정수로 리턴하라고 했기때문에 int형을 다시 붙여줘야한다. 다른 사람의 코드를 보며 배운 점은, sorted를 사용하면 list를 자동으로 반환해주기 때문에 따로 list를 선언 할 필요가 없다는 점이었다. 또, map 함수를 사용하지 않았는데 이유는 str을 바로 int형으로 바꿔주지 않고 제일 마지막에 int형으로 바꿔주기.. 2021. 3. 31. 이전 1 ··· 99 100 101 102 103 104 105 다음