전체 글
-
[Python] BOJ 9935: 문자열 폭발코딩테스트/백준 2024. 11. 20. 09:04
요구사항시간 제한 2초메모리 제한 128MB비어 있다면 FRULA를, 아니라면 폭발 후 문자열을 출력하라설계 1입력 받은 문자열(line) 과 비교할 문자열(target) 을 받는다.line 에서 target 기준으로 왼쪽과 오른쪽으로 나누어 저장한다.line을 업데이트 한다. line = left + right요구사항에 맞게 출력한다. 구현 1import sysinput = lambda: sys.stdin.readline().rstrip()line = input()target = input()# 결과 문자열while target in line: # 더 이상 target이 없을 때까지 반복 index = line.find(target) # target의 시작 위치 left_stack = l..
-
[Python] BOJ 10026: 적록색약코딩테스트/백준 2024. 11. 19. 20:39
요구사항시간제한 1초메모리 제한 128MB적록색약이 아닌 사람과 그런 사람이 볼 수 있는 구역의 수를 구하라. 설계적록색약이냐 아니냐를 플래그로 만들어서 bfs 함수에 넣어준다. 추가로 방문 여부와 count 값도 따로 만들어준다. 구현from collections import deque# 방향 벡터 (상, 하, 좌, 우)dx = [-1, 1, 0, 0]dy = [0, 0, -1, 1]def bfs(x, y, grid, visited, n, color_blind): queue = deque([(x, y)]) visited[x][y] = True current_color = grid[x][y] while queue: cx, cy = queue.popleft() ..
-
[Python] BOJ 1012: 유기농 배추언어/Python 2024. 11. 18. 09:57
https://www.acmicpc.net/problem/1012요구사항시간 제한 1초 M x N = 250 메모리 제한 512 MB 리스트 남발해도 끄떡없게 주심최소의 배추흰지렁이 마리 수를 출력. 설계BFS 를 사용해서 해결할 수 있다. 배추가 심어져 있는 땅이 얼마나 연결되어 있느냐? 를 생각하면 된다. 백준의 1926번을 풀어봤다면 쉽게 풀었을 듯 하다.문제를 볼 때, 지렁이 배추를 생각하면 되려 헷갈려 문제의 본질을 찾고, 내가 풀었던 문제들 중 가장 비슷한 문제를 떠올리면 쉽게 풀리는 거 같다. https://studyiwthme.tistory.com/185 배추 밭을 초기화하고 배추가 심어져 있는 땅을 구하고전체 필요한 지렁이를 초기화방문 여부 처리 배열 초기화 BFS 탐색 함수를 생성하자..
-
[Python] 1926: 간단한 369게임코딩테스트/SWEA 2024. 11. 14. 09:58
https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=2&problemLevel=3&contestProbId=AV5PTeo6AHUDFAUq&categoryId=AV5PTeo6AHUDFAUq&categoryType=CODE&problemTitle=&orderBy=INQUERY_COUNT&selectCodeLang=PYTHON&select-1=3&pageSize=10&pageIndex=1요구사항Python 4초10 메모리 256게임 규칙에 맞게 출력하는 프로그램을 작성하라설계3 or 6 or 9의 개수를 count 해서 상황에 맞게 출력해주자. 구현n = int(input())for i in range(1, n + 1): ..
-
[SWEA] 1954: 달팽이코딩테스트/SWEA 2024. 11. 13. 08:02
https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=2&contestProbId=AV5PobmqAPoDFAUq&categoryId=AV5PobmqAPoDFAUq&categoryType=CODE&problemTitle=&orderBy=FIRST_REG_DATETIME&selectCodeLang=PYTHON&select-1=2&pageSize=10&pageIndex=2요구사항시간 제한 10개 테스트 케이스 합쳐서 30초? 테스트 케이스당 3초니깐 무제한 시간제한임 거의메모리 제한도 256MB, 스택 메모리 1MB는 뭔지 모르겠다. 10이하 자연수를 입력하면 n x n 행렬을 출력해라. 시계 방향으로 돈다. 방문한 곳은 재방문..
-
[SWEA] 1859. 백만 장자 프로젝트코딩테스트/SWEA 2024. 11. 12. 07:39
https://swexpertacademy.com/main/solvingProblem/solvingProblem.do요구사항10개의 테스트 케이스 합쳐서 파이썬의 경우 30초무슨 말인지...힙, 정적 메모리 합쳐서 256MB이내최대이익을 구하자설계stack을 사용해서 잘 빼주면서 더하면 된다.리스트에 가격들을 집어 넣는다. [10, 7, 6] for 문을 리스트의 거꾸로 돌린다.마지막부터 비교해야 언제 팔지 알지 ! 3일 째 6원이고 2일 째 7원이다. 그러면 3일 째 오히려 떨어지니 주식 사겠냐 !!for price in reversed(stack): # 거꾸로 돌리기if max_price max_price = price # 이전 일차 가격을 최대 가격으로 만들어준다.else:total_pri..
-
[크래프톤 정글] 8주차 끝난 월요일 (달성률 100%)회고 2024. 11. 11. 22:57
8주차를 끝내며..나는 이번 8주차는 1.5주 동안 진행되었다. “1.5주간 몰입을 했느냐?” 라고 물어본다면 전혀 그러지 못한 거 같다. 끝내기로 한 자바 기초는 끝내지도 못하고 그렇다고 PintOS를 막 생각해보고 한 것도 아니고 긴장이 많이 풀린 거 같다.앞으로 맞이할 9주차는…앞으로는 정말 정말 내가 정한 스케줄을 어긋나지 않게 노력하도록 해야겠다. 학습 방법에 대한 고민은 이제 없는 듯하다. 8주면 아는 내용을 평생을 거쳐 몰랐더니 개탄스럽지 않을 수 없다. 그래도 이번 주차 좋았던 점을 꼽자면 아주 큰 파일을 뜯어볼 기회가 있어서 좋았다. 커봐야 300줄 안으로 되어 있는 하나의 파일만 다루다가, 엄청 큰 파일을 만나보니 아..전체적인 흐름을 잡고 그 안에서 구현을 하고 나머지는 요정이 해주겠..
-
[PintOS]9주차 project2-키워드TIL 2024. 11. 11. 20:03
User mode vs Kernel mode프로그램이 부팅되면 하드웨어가 커널 모드에서 시작하고 운영 체제가 로드되면 사용자 모드에서 사용자 애플리케이션을 시작한다. 하드웨어에 대한 보호를 제공하기 위해 커널 모드에서만 실행되는 특권 명령어가 있다. 사용자가 사용자 모드에서 특권 명령어를 실행하려고 하면 명령어를 불법으로 처리하고 OS에 트랩한다.트랩이란 CPU가 프로그램에서 발생한 예외 상황이나 시스템 호출을 처리하기 위해 실행을 잠시 멈추고 커널 모드로 전환하는 소프트웨어 인터럽트이다. 트랩이 발생하면 현재 실행 중인 프로그램의 흐름이 하드웨어에 의해 중단되고, 제어가 운영 체제의 특정 핸들러 함수로 넘어간다.그 예로 System Call, Exception, 등이 있다.User mode프로그램이 운..