본문 바로가기

백준

[TIL] 백준 1406번: 에디터 (Python) - 연결리스트로 풀기 문제 링크: https://www.acmicpc.net/problem/1406 1406번: 에디터 첫째 줄에는 초기에 편집기에 입력되어 있는 문자열이 주어진다. 이 문자열은 길이가 N이고, 영어 소문자로만 이루어져 있으며, 길이는 100,000을 넘지 않는다. 둘째 줄에는 입력할 명령어의 개수 www.acmicpc.net 풀이 방법 다른 사람들의 풀이를 보면 두 개의 스택을 이용하는 방법이 많은데, 현재 공부 중인 바킹독 시리즈에서 연결 리스트 문제로 분류되어있어 연결리스트로 구현하여 제출하였다. 그냥 리스트를 사용하는 것보다 insert시에 시간이 O(N)이 아닌 O(1)이라 문제의 빡빡한 시간 제한을 통과할 수 있으며, 연결리스트 내의 다양한 메서드를 구현할 수 있지만 문제에서 필요로하는 최소한의 요.. 더보기
[TIL] 백준 13300번: 방 배정 (Python) - 시간 복잡도 O(N)으로 풀기 문제 링크: https://www.acmicpc.net/problem/13300 13300번: 방 배정 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 수학여행에 참가하는 학생 수를 나타내는 정수 N(1 ≤ N ≤ 1,000)과 한 방에 배정할 수 있는 최대 인원 수 K(1 < K ≤ 1,000)가 공백으로 분리되어 www.acmicpc.net 풀이 방법 남학생 여학생 배열 생성 각 학년 인덱스에 대해 인원 저장 (0번 ~ 5번: 1학년 ~ 6학년) 두 배열을 이어 붙여 loop돌며 K로 나누어 떨어지면 몫 만큼, 나머지가 있을경우 몫 + 1 만큼 방 수 증가 남학생 (1학년 ~ 6학년) 0 0 0 0 0 0 여학생 (1학년 ~ 6학년) 0 0 0 0 0 0 예제 입력2에 대한 결과는 아래와 같다... 더보기
[Python] 백준 알고리즘 5단계: 1차원 배열 🔗 제출 답안 Github 링크 GitHub - dbj2000/TIL: 본 레포는 학습의 일상화(1일 1커밋) 를 위한 레포지터리입니다. 본 레포는 학습의 일상화(1일 1커밋) 를 위한 레포지터리입니다. Contribute to dbj2000/TIL development by creating an account on GitHub. github.com 10818_최소최대.py 1546_평균.py 2562_최댓값.py 2577_숫자의개수.py 3052_나머지.py 4344_평균은넘겠지.py 8959_OX퀴즈.py 💡 문제 풀이 중 알게된 내용 📑 2562_최댓값 문제 中 # 임의의 개수의 정수를 n줄 입력받아 1차원 리스트에 저장 data = [] for i in range(9): data.append(in.. 더보기