본문 바로가기

코딩테스트166

[ 자바스크립트(JavaScript) ] 프로그래머스 level1 - 짝수와 홀수 📍 프로그래머스 1단계 - 짝수와 홀수 프로그래머스 1단계 - 짝수와 홀수 ⚡️ 나의 풀이 조건문을 이용해 if-else로 나타낼 수 있지만, 삼항연산자를 이용해 더욱 간단하게 작성할 수도 있다. // 삼항연산자 function solution(num) { return (num % 2) ? "Odd" : "Even" } // 조건문 function solution(num) { if (num % 2 == 1){ return "Odd" }else{ return "Even" } } 2021. 7. 27.
[ 자바스크립트(JavaScript) ] 프로그래머스 level1 - k번째 수 📍 프로그래머스 1단계 - K번째 수 프로그래머스 1단계 - K번째 수 ⚡️ 나의 풀이 JS로 처음 풀어본 문제인데, 나는 단순 for문으로 풀었지만 for ~ of로 풀면 조금 더 깔끔하게 풀 수 있다. 또 slice는 start, end 인덱스를 잘 계산해야 놓치지 않는다. slice에서 end는 포함하지 않는다는 것을 잊지 말자. 추가로 sort는 element를 문자열로 취급하여 정렬하기 때문에, 유니코드 순서대로 정렬된다. 따라서 숫자를 정렬하고 싶다면 파라미터를 두 개를 넘겨주고 오름차순은 a-b, 내림차순은 b-a 하는 과정을 거치자. // for function solution(arr, commands) { const answer = []; for (let i= 0; i < i.comman.. 2021. 7. 22.
[ 파이썬(python) ] 백준 10709 - 기상캐스터 📍 백준 10709 - 기상캐스터 백준 10709 - 기상캐스터 ⚡️ 나의 풀이 시뮬레이션 문제였는데, 구름이 움직일때의 로직을 어떻게 짜는냐가 중요한 문제였다. 내가 작성한 코드는 다른 코드에 비해 길이도 많았고, 실행시간도 100m/s정도 차이가 났다. 다시보니까 반복문을 많이 사용해서 그런것 같다. 나의 풀이방법은 다음과 같다. 입력에 구름이 있는지 없는지를 판단하여 boolean값을 리턴한다. 구름이 한개라도 존재하는 경우 현재 sky좌표가 c이고 다음 칸을 방문하지 않았다면 cnt를 하나씩 증가시킨다. (종료조건: cnt가 W보다 커질 때) 다른사람의 풀이순서는 입력의 각 row를 기준으로 풀었는데, 생각해보면 문제에서 열끼리는 고려하지 않고 행을 기준으로만 풀기때문에 여기서 코드를 간단하게 사.. 2021. 7. 21.
[ 파이썬(python) ] 백준 10813 - 공 바꾸기 📍 백준 10813 - 공 바꾸기 백준 10813 - 공 바꾸기 ⚡️ 나의 풀이 입력으로 들어온 값을 baskets의 index를 바꿔주면 된다. 팁은 lambda 함수를 통해 입력으로 들어올 때 공통으로 원하는 값을 빼줄 수 있다. (참고) n, m = map(int, input().split()) baskets = [i for i in range(1, n+1)] for _ in range(m): a, b = map(lambda x: int(x)-1, input().split()) baskets[a], baskets[b] = baskets[b], baskets[a] print(*baskets) 2021. 7. 19.
[ 파이썬(python) ] 백준 10804 - 카드 역배치 📍 백준 10804 - 카드 역배치 백준 10804 - 카드 역배치 ⚡️ 나의 풀이 카드를 0부터 20까지 선언한다 (0을 추가한 이유는 index를 편하게 계산하기 위해서) 카드 뒤바꿀 범위를 입력 받는다. 새로운 변수에 카드를 뒤바꿀 위치만 [::-1] 선언하고 뒤바꾸지 않는 범위는 그대로 붙인다. (slicing의 특징은 end 범위는 포함하지 않는 것이다.) 새로운 변수를 이전 변수에 덮어씌운다. 반복 ~ 마지막에는 맨 처음 값을 제외하고 나머지 값만 출력한다. arr = [i for i in range(0, 21)] for _ in range(10): a, b = map(int, input().split()) b += 1 arr_ = arr[:a] + arr[a: b][::-1] + arr[b:.. 2021. 7. 18.