일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 이분탐색
- 구현
- Spring
- 스택
- 로봇 청소기
- 플로이드 와샬
- BFS
- 프로그래머스
- 투 포인터
- 백트래킹
- 트라이
- 백준
- 2020 카카오 인턴십
- 2019 KAKAO BLIND RECRUITMENT
- 시뮬레이션
- 최소 신장 트리
- 2018 KAKAO BLIND RECRUITMENT
- 2021 KAKAO BLIND RECRUITMENT
- 다익스트라
- 투포인터
- 2020 KAKAO BLIND RECRUITMENT
- 조합
- 비트마스킹
- SWEA
- 브루트포스
- 파이썬
- 플로이드와샬
- 우선순위큐
- 크루스칼
- GIT
- Today
- Total
목sssssss록파이썬 (109)
개발조아
문제 링크 : https://www.acmicpc.net/problem/11967 11967번: 불켜기 (1, 1)방에 있는 스위치로 (1, 2)방과 (1, 3)방의 불을 켤 수 있다. 그리고 (1, 3)으로 걸어가서 (2, 1)방의 불을 켤 수 있다. (2, 1)방에서는 다시 (2, 2)방의 불을 켤 수 있다. (2, 3)방은 어두워서 갈 수 없으 www.acmicpc.net BFS + 구현 문제이다. 알고리즘 자체는 어렵지 않으나 상태값을 잘못 지정하여 틀리고 있었다. 문제는 간단하다. 맵에 특정칸에는 다른 칸의 조명을 켤수 있는 스위치가 있고, 주인공은 상하좌우로 조명이 켜진 칸으로만 이동이 가능하다. 한 스위치로 여러개의 조명을 컨트롤 가능하고 한 조명이 여러 스위치에 의해 컨트롤이 가능하다. 이..
문제 링크 : https://www.acmicpc.net/problem/7490 7490번: 0 만들기 각 테스트 케이스에 대해 ASCII 순서에 따라 결과가 0이 되는 모든 수식을 출력한다. 각 테스트 케이스의 결과는 한 줄을 띄워 구분한다. www.acmicpc.net 백트래킹, 브루트포스 문제이다. 1~N까지 숫자들 사이에 연산자 '+','-',' ' 중 한가지를 반드시 넣고 결과를 계산해서 그 값이 0인 것의 식을 출력하는 것이다. ' '의 경우 두수를 붙이는 것이다. 연산자들을 모두 넣고 마지막에 계산해야한다. 중간중간에 계산한다면 더 복잡해질 것이다. 1-2 3 같은 경우가 힘들듯하다. 그래서 모든 자리에 다 연산자를 넣고 마지막에 값만 계산해서 확인하면 된다. 연산자 넣는 것은 간단한 백트래..
문제 링크 : https://www.acmicpc.net/problem/14938 14938번: 서강그라운드 예은이는 요즘 가장 인기가 있는 게임 서강그라운드를 즐기고 있다. 서강그라운드는 여러 지역중 하나의 지역에 낙하산을 타고 낙하하여, 그 지역에 떨어져 있는 아이템들을 이용해 서바이벌을 www.acmicpc.net 각 노드에서 출발하여 정해진 가중치 이내로 갈 수 있는 노드들이 가지고 있는 값의 합의 최대값을 구하는 문제이다. 모든 노드에서 각 노드로 최단거리를 구해서 그 길이가 m 이하인 것들의 아이템수의 합을 구하고 그중 최대값을 구하면 된다. 모든 노드에 대해서 최단거리는 플로이드와샬과 다익스트라로 해결할 수 있다. 해당 문제는 노드의 개수가 최대 100개 이므로 플로이드와샬로 해결 가능하다...
문제 링크 : https://www.acmicpc.net/problem/18809 18809번: Gaaaaaaaaaarden 첫째 줄에 정원의 행의 개수와 열의 개수를 나타내는 N(2 ≤ N ≤ 50)과 M(2 ≤ M ≤ 50), 그리고 초록색 배양액의 개수 G(1 ≤ G ≤ 5)와 빨간색 배양액의 개수 R(1 ≤ R ≤ 5)이 한 칸의 빈칸을 사이에 두 www.acmicpc.net BFS, 백트레킹, 조합 다 써볼수 있는 좋은 문제라고 생각한다. 문제는 비교적 간단하다. 요약하면 아래와 같다. 배양액의 종류는 두개이고 이 배양액을 놓을 수 있는 칸은 최대 10개 이하로 정해져있다. 배양액을 넣을 수 있는 칸에 주어진 배양액 전부 적절히 분배하고 확산시킨다. 이때 배양액은 동서남북 방향으로 퍼지며 물로는..
문제 링크 : https://www.acmicpc.net/problem/10836 10836번: 여왕벌 입력의 첫 줄에는 격자칸의 가로와 세로 크기 M(2 ≤ M ≤ 700)과 날짜 수 N(1 ≤ N ≤ 1,000,000)이 자연수로 주어진다. 첫날 아침의 애벌레 크기는 모두 1이므로 입력에 주어지지 않는다. 다음 N개의 www.acmicpc.net 처음에는 그날그날 모든 칸의 크기를 구해서 넣어줬다. 그랬더니 시간이 너무 오래 걸려서 다시 생각해봤다. 모든 애벌래는 1부터 시작하고 첫번째 행, 첫번째 열을 제외하고는 그칸에서 왼쪽, 오른쪽, 왼쪽위칸의 값중 가장 큰값이 해당 칸의 크기가 된다. 그렇기 때문에 그냥 첫행, 첫열의 값만 구해주면 된다. 입력으로 들어온 값은 애벌레들이 자라는 정도를 왼쪽 제..
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/72414?language=python3 코딩테스트 연습 - 광고 삽입 시간을 나타내는 HH, H1, H2의 범위는 00~99, 분을 나타내는 MM, M1, M2의 범위는 00~59, 초를 나타내는 SS, S1, S2의 범위는 00~59까지 사용됩니다. 잘못된 시각은 입력으로 주어지지 않습니다. (예: 04:60:24, 11 programmers.co.kr 역시 카카오 시간관련 문제를 좋아한다. 다행인건 시간이 복잡하지 않다는 것이다. 이 문제는 전체 구간의 길이가 주어졌을 때 특정 구간의 합이 가장 큰것의 시작점을 찾는 것이다. 근데 이때 그 구간이 여러개라면 가장 먼저 나온 구간의 시작점을 구하는..
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/72413 코딩테스트 연습 - 합승 택시 요금 6 4 6 2 [[4, 1, 10], [3, 5, 24], [5, 6, 2], [3, 1, 41], [5, 1, 24], [4, 6, 50], [2, 4, 66], [2, 3, 22], [1, 6, 25]] 82 7 3 4 1 [[5, 7, 9], [4, 6, 4], [3, 6, 1], [3, 2, 3], [2, 1, 6]] 14 6 4 5 6 [[2,6,6], [6,3,7], [4,6,7], [6,5,11], [2,5,12], [5,3,20], [2,4 programmers.co.kr n이 200으로 작아서 플로이드 와샬로 풀었다. 풀이는 생각보다 너무..
문제 링크 : https://www.acmicpc.net/problem/22234 22234번: 가희와 은행 가희는 창구가 하나인 은행을 운영하고 있습니다. 가희의 은행이 영업을 시작했을 때, 대기 줄에는 손님이 N명 있습니다. [그림 1] 카운터 직원과 N명의 손님 x번 손님에 대한 정보는 x번 손님의 www.acmicpc.net 은행에서 업무를 라운드 로빈 방식으로 처리한다. OS 스케쥴링 정책 중 라운드 로빈 스케쥴링이다. 간단히 설명하면 프로세스들 사이에 우선순위를 두지 않고 들어온 순서대로 처리하지만 공평하게 CPU를 사용하기 위해 시간단위(Time Quantum) 만큼만 CPU를 할당받아 수행한다. 이후 작업이 남아있다면 다시 대기열의 맨 뒤로 가서 대기한다. 문제의 알고리즘도 이 방식으로 진..