분류 전체보기521 [ 파이썬(python) ] 백준 10703 - 유성 📍 백준 10703 - 유성 백준 10703 - 유성 ⚡️ 나의 풀이 이 문제는 내가 구현력이 부족하여 3일 동안 붙잡고 있었다. 지금 정답 판정을 받고 복습 겸 글을 작성하면서 느끼는 건 정답 코드를 볼 땐 금방 풀 수 있을 것 같은데 막상 풀 때는 왜 그렇지 못할까?!라는 생각이 든다. 중간에 move를 계산하는 과정에 막혀 질문을 올렸는데 고수분께서 명쾌한 답변을 해주셔서 너무 감사했다. 문제를 다 풀고 그분의 코드를 보니까 이렇게도 생각 할 수 있구나..! 대박인데?!라고 생각했다. 나도 언젠가 고수가 되어 모르는 분들이 올리는 질문을 자유자재로 답변해주는 수준까지 올라가리라.. 이번 문제를 풀며 배운점은 여러 가지 있지만 중요하다고 생각하는 내용들만 가져왔다. 문자열 리스트를 입력받을 때 [li.. 2021. 5. 27. [ 파이썬(python) ] 백준 2309 - 일곱 난쟁이 📍 백준 2309 - 일곱 난쟁이 백준 2309 - 일곱 난쟁이 ⚡️ 나의 풀이 브루트 포스(brute force)유형 문제인데 핵심은 다음과 같다. 아홉 난쟁이의 키는 모두 다르지만 그중 일곱 난쟁이의 크기의 합은 100이 된다. 즉, sum(arr) - (난쟁이1 + 난쟁이2) == 100과 같은 말이다. 그런데 몇 번 난쟁이가 들어가야 할지 모르기 때문에 모든 경우의 수를 찾아야한다. sum(arr) - (arr[i] + arr[j]) == 100이 되면 해당 난쟁이를 새로운 변수로 넣어두고 마지막에 arr에서 제거한다. sum(arr) - (arr[i] + arr[j]) == 100이 되면 반복문을 한번 더 선언하고 해당 난쟁이를 제외하고 출력 후 exit()로 빠져나온다. break문을 사용하게.. 2021. 5. 26. [ 리액트(React) ] 구조분해할당(Destructuring Assignment)으로 가독성 높이기 📍 구조 분해 할당(Destructuring Assignment)으로 가독성 높이기 react의 코드를 리팩토링하던 중 handleClick 함수를 module화 시켜놓고 handleClick을 사용해야하는 각각의 page에서 다음과 같이 선언했었다. categoryHandleClick의 combat, supply의 경우에 변수가 많지 않아 그러려니 할 수 있겠지만, combatHandleClick, supplyHandleClick 같은 경우 변수가 6개나 되기 때문에 괜히 코드가 괜히 길어 보이는 듯한 느낌을 받았다. 이때 구조분해할당(Destructuring Assignment)을 사용하면 코드를 깔끔하게 줄일 수 있다. 구조분해할당이 무엇인지 잘 모르겠다면 다음 MDN문서를 확인해보자. 첫번째 코드.. 2021. 5. 25. [ 파이썬(python) ] 백준 20291 - 파일 정리 📍 백준 20291 - 파일 정리 백준 20291 - 파일 정리 ⚡️ 나의 풀이 확장자 뒤의 값만 담을 defaultdict 변수를 선언한다. 공백을 기준으로 분리(split())한다. 동일한 확장자(split()[1])가 입력으로 들어오면 defaultdict에 1씩 더한다. dic.items()를 sorted한다. ' '.join을 사용하여 출력한다. from collections import defaultdict import sys input = sys.stdin.readline n = int(input()) dic = defaultdict(int) for _ in range(n): file = input().rstrip().split('.')[1] dic[file] += 1 for i in sor.. 2021. 5. 24. [ 파이썬(python) ] 백준 9093 - 단어 뒤집기 📍 백준 9093 - 단어 뒤집기 문제: 백준 9093 - 단어 뒤집기 💡 나의 풀이 입력 전체를 뒤집는 것이 아니고 공백을 기준으로 나누고 해당 단어만 뒤집어서 출력하는 문제다. 반복문을 선언하여 i[::-1]를 사용하는 방법과 lambda 를 사용해서 뒤집는 방법 총 2가지로 나누어서 풀었다. import sys input = sys.stdin.readline T = int(input()) # 반복문 선언 for _ in range(T): result = ' '.join([i[::-1] for i in input().split()]) print(result) # 람다 함수 선언 for _ in range(T): print(' '.join(map(lambda x: x[::-1], input().spli.. 2021. 5. 24. 이전 1 ··· 76 77 78 79 80 81 82 ··· 105 다음