
✔️오늘의 학습 키워드 문자열 구현 백준 1032번 명령 프롬프트 ✔️ 공부한 내용 📌 오늘의 문제 📌 작성 코드 ✔️ 오늘의 회고 📌 문제 및 시도 방법 파이썬의 문자열은 불변이므로 수정할 수 없다. 따라서 리스트로 입력 받아 인덱스의 값을 수정하는 방식

구현문자열백준 10820번 문자열 분석문자열을 여러 줄로 입력 받으나 개수는 입력받지 않으므로 splitlines()를 사용했다.소문자, 대문자, 숫자, 공백 판단은 각각 islower(), isupper(), isdigit(), isspace() 함수를 사용했다.원래

구현문자열백준 31458번 !!초콜릿 중독 주의!!입력받은 문자열을 하나씩 바꿔나가는 순으로 시도했다.팩토리얼 먼저 계산하고 그 후에 왼쪽 !가 있는걸 바꾸도록 진행했다.입력받은 문자열이 0이나 1이 될 때까지 반복팩토리얼 먼저 1로 변환한다.!가 왼쪽에 있는 걸 반전

큐, 스택스택을 이용한 큐 구현leetcode 232번 Implement Queue using Stacks스택 연산을 이용해 큐를 구현하는 문제인데, 큐는 선입선출 구조이므로 스택을 2개 이용하여 해야한다.push(x) : 요소(x)를 스택(input)에 삽입pop()

큐, 스택큐를 이용한 스택 구현leetcode 225번 Implement Stack using Queues큐를 스택을 구현한다.push(x) : 요소(x)를 큐(queue)에 삽입. 삽입한 요소를 맨 앞에 둘 수 있도록 재정렬.pop() : 큐의 맨 앞 요소(스택에서의

다이나믹 프로그래밍leetcode 70번 Climbing Stairs동적계획법을 사용하여 문제를 풀었다.계단 오르는 수를 저장하는 리스트(step) 생성n= 1일 경우 1로 저장, n이 2보다 크면 2번째에 2로 저장3번째부터는 i-2, i-1에 저장된 값을 더해가며

스택백준 3986번 좋은단어스택을 이용해서 문제를 풀었다.단어의 수 (n) 만큼 반복각 단어가 만약 스택(stack)이 비어있지않고, top과 같으면 stack에서 pop만약 스택이 비어있거나 top과 같지 않으면 스택에 넣는다.최종 스택이 비어있으면 좋은 단어이므로

문자열해시leetcode 2283번 Check if Number Has Equal Digit Count and Digit Value사실 이 문제는 문제 내용부터 이해하는데 좀 시간이 걸렸다.이 문제는 각 글자의 인덱스의 개수가 그 글자의 수가 모두 같으면 True, 그

해시맵해시리트코드 706번 Design HashMap해시테이블 라이브러리를 사용하지 말라고 해서 배열로 풀었다.hash 배열을 최대 길이가 10^6이므로 10^6+1 크기 배열 생성, 초기값 -1put(key,value) : 배열의 인덱스(key)에 value 값 설정

해시해시를 사용한 집합과 맵백준 2358번 평행선해시를 이용해 풀기 위해 딕셔너리를 사용했다.핵심은 직선을 그리려면 x좌표에 같은 값이 2개 이상일 경우 그 x좌표를 지나는 세로 직선을 하나 그릴 수 있고, y좌표도 마찬가지로 y좌표에 같은 값이 2개 이상이면 가로 직

해시해시테이블리트코드 187번 Repeated DNA Sequencesseen, repeated라는 2개의 set()을 사용하여 2번 이상 반복되는 dna sequence를 구별하였다.10글자씩 인덱싱한다.처음 추가되는 dna면 seen에 추가, 이미 seen에 추가된

자료 구조문자열해시를 사용한 집합과 맵백준 25757번 임스와 함께하는 미니게임한 번 같이 플레이한 사람과는 다시 플레이하지 않으므로 중복을 제거하기 위해 플레이어를 set에 저장해야겠다고 생각했다.또한, 윷놀이/같은그림찾기/원카드일 경우 최대 게임 플레이 수는 각각

문자열정렬백준 1181번 단어 정렬길이가 짧은 것부터길이가 같으면 사전 순으로이라는 조건이 있어 lambda 함수를 사용해야겠다고 생각했다.또한, 중복된 단어는 하나만 남기고 제거해야 한다는 조건이 추가로 붙었으므로 set을 사용하였다.set()에 n(단어의 개수)만큼

자료구조정렬해시를 사용한 집합과 맵백준 29723번 브실이의 입시전략

자료구조정렬해시를 사용한 집합과 맵백준 25325번 학생 인기도 측정학생과 인기도가 둘 다 필요하므로 딕셔너리를 사용하였다.인기도 순으로 정렬해야하므로 lambda를 사용하였다.학생 수 입력학생 정보 입력, 학생정보 딕셔너리의 값은 전부 0으로 초기화좋아하는 학생 정보

이분탐색배열리트코드 349번 Intersection of Two Arraysnums1과 nums2의 공통으로 들어가있는 숫자 배열 반환해야하지만 중복인 숫자는 하나만 반환하므로 set으로 만든다. -> set(nums1), set(nums2)공통으로 들어가있는 숫자만

이분탐색리트코드 1385번 Find the Distance Value Between Two Arraysarr1과 arr2를 순회하는 방법 사용절댓값 이 d보다 커야하므로 절댓값 함수 abs 사용arr1에서 arr1원소 - arr2원소 의 절댓값을 하였을 때 모두 d보다

이분탐색백준 1590번 캠프가는 영식이분탐색 사용버스 도착시간을 time 배열에 저장time의 맨 마지막 요소가 t(터미널 도착 시간) 보다 작으면 continue이진탐색 시작 -> 버스 출발 시간 - 영수 도착 시간을 result에 추가result가 있으면 최솟값 출

이분탐색백준 20551번 Sort 마스터 배지훈의 후계자처음엔 이분탐색 없이 그냥 풀었더니 시간 초과가 나왔다.그래서 이분탐색 사용하여 푸는 방법으로 재시도 하였다.n(배열 원소 수),m(질문 수) 입력배열 원소 n만큼 입력받은 후 정렬이분탐색질문 수 m만큼 d(정수)

이분탐색해시를 사용한 집합과 맵백준 4158번 CD22일차 Intersection of Two Arrays 와 비슷한 방식으로 시도하였다.n(상근이가 가지고 있는 CD의 수), m(선영이가 가지고 있는 CD의 수) 입력cd_n(상근이가 가지고 있는 CD 번호 입력)cd