본문 바로가기

알고리즘124

스택 수열[백준 1874] https://www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net stack을 탈출하는 조건에서 고민했던 문제이다. 굳이 그럴필요는 없었지만..... 구현하기 나름인데 아직 문제를 꿰뚫는 황금 라인은 보이지 않는것 같다. 예전에 골프 만화를 읽었을때 어느정도 경지에 오르면 골프공이 홀에 빨려들어갈 황금 라인이 보인다더라. 알고리즘도 하다보면 그런 라인이 보이겠지???? 언제나 그렇.. 2021. 11. 20.
프린터 큐[백준 1966] https://www.acmicpc.net/problem/1966 1966번: 프린터 큐 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 www.acmicpc.net 우선순위가 껴있어서 우선순위 큐를 사용해야지 했다가 우여곡절을 겪은 문제다. 당연히 우선순위큐를 이용해서 풀수도 있겠지만 작성하고 있던 코드는 계속 산으로 가서 방법을 수정했다. 처음보면 테스트 케이스에서 3번 예제가 이해 안될법 한데 문제 잘 읽으면 이해 될거에요 아래는 정답 코드다. tc = int(input()) for _ in range(tc) : n, m = list(map(int, inpu.. 2021. 11. 20.
숫자 문자열과 영단어[2021 KAKAO BLIND] https://programmers.co.kr/learn/courses/30/lessons/81301 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 레벨 1짜리 문제다. 너무 어렵게 접근을 했었다. 다른 사람들의 답변을 보고 파이썬에 아직 익숙하지 않구나 하는걸 느꼈다. 내가 제출한 코드를 먼저 보자 def solution(s): answer = 0 hash_list = {"zero": 0, "one": 1, "two": 2, "three": 3, "four": 4, "five": 5, "six".. 2021. 11. 20.
치킨 튀기기[제로베이스] 철수는 개발자에서 은퇴하여 치킨집을 하게 되었다. 철수는 뛰어난 개발 실력으로 N대의 자동 튀김기를 만들어냈다. i번째 자동 튀김기는 치킨을 한번 튀기는 데에 fry[i] 만큼의 시간이 걸리며, 튀김이 한 번 끝나면 clean[i] 만큼의 시간동안 자동 세척을 한다. 철수가 C번 치킨을 튀겨내려고 할 때, 최소한 몇 시간 동안 자동 튀김기를 가동해야 하는지 계산하시오. 제약사항 * 0 < N 2021. 11. 14.
기둥과 보 설치[2020 KAKAO BlIND RECRUITMENT] https://programmers.co.kr/learn/courses/30/lessons/60062 코딩테스트 연습 - 외벽 점검 레스토랑을 운영하고 있는 "스카피"는 레스토랑 내부가 너무 낡아 친구들과 함께 직접 리모델링 하기로 했습니다. 레스토랑이 있는 곳은 스노우타운으로 매우 추운 지역이어서 내부 공사를 하 programmers.co.kr 접근 방법 : * 나머지 연산을 생각했었다. 원형의 특성상 나머지 연산을 통해 방향에 상관없이 인덱스에 접근할 수 있을것 같았다. * 배열을 두개를 붙여야 겠다고 생각했다. 나머지 연산은 계산이 너무 복잡해 질것 같았다. 전체 크기만큼 붙인 인덱스를 뒤에 연이어 붙여주기만 하면 될것 같았다. 두번째 방법으로 코드를 짜보았다. 살펴보도록 하자! from itert.. 2021. 11. 14.
나 잡아 봐라[2019 LINE 인턴채용] 연인 코니와 브라운은 광활한 들판에서 ‘나 잡아 봐라’ 게임을 한다. 이 게임은 브라운이 코니를 잡거나, 코니가 너무 멀리 달아나면 끝난다. 게임이 끝나는데 걸리는 최소 시간을 구하시오. 조건 코니는 처음 위치 C에서 1초 후 1만큼 움직이고, 이후에는 가속이 붙어 매 초마다 이전 이동 거리 + 1만큼 움직인다. 즉 시간에 따른 코니의 위치는 C, C + 1, C + 3, C + 6, …이다. 브라운은 현재 위치 B에서 다음 순간 B – 1, B + 1, 2 * B 중 하나로 움직일 수 있다. 코니와 브라운의 위치 p는 조건 0 2021. 11. 14.