본문 바로가기

Algorithm/99클럽

(16)
[99클럽] 비기너 코딩테스트 스터디 TIL - 백준, 1755 1. 문제풀이1) 문제79를 영어로 읽되 숫자 단위로 하나씩 읽는다면 "seven nine"이 된다. 80은 마찬가지로 "eight zero"라고 읽는다. 79는 80보다 작지만, 영어로 숫자 하나씩 읽는다면 "eight zero"가 "seven nine"보다 사전순으로 먼저 온다.문제는 정수 M, N(1 ≤ M ≤ N ≤ 99)이 주어지면 M 이상 N 이하의 정수를 숫자 하나씩 읽었을 때를 기준으로 사전순으로 정렬하여 출력하는 것이다. 입력첫째 줄에 M과 N이 주어진다. 출력M 이상 N 이하의 정수를 문제 조건에 맞게 정렬하여 한 줄에 10개씩 출력한다.2) 해석 M이상 N이하의 정수를 영어로 숫자 하나씩 읽었을 때 기준으로, 사전순으로 정렬하여 출력정수로 한 줄에 10개씩 출력우선 영어 배열 만들기 ..
[99클럽] 비기너 코딩테스트 스터디 TIL - 백준, 1524 1. 문제풀이1) 문제, 세준세비 (백준 1524)세준이와 세비는 온라인 게임을 즐겨한다. 이 온라인 게임에서는 군대를 서로 키울 수 있다.세준이는 N명의 병사를 키웠고, 세비는 M명의 병사를 키웠다. 이제 서로 전쟁을 하려고 한다.전쟁은 여러 번의 전투로 이루어진다. 각 전투에서 살아있는 병사중 제일 약한 병사가 죽는다.만약 제일 약한 병사가 여러 명이고, 제일 약한 병사가 모두 같은 편에 있다면, 그 중에 한 명이 임의로 선택되어 죽는다.하지만, 제일 약한 병사가 여러 명이고, 양 편에 모두 있다면, 세비의 제일 약한 병사 중 한 명이 임의로 선택되어 죽는다.전쟁은 한 명의 병사를 제외하고 모두 죽었을 때 끝난다. 전쟁의 승자를 출력하는 프로그램을 작성하시오. 입력첫째 줄에 테스트 케이스의 개수 T가..
[99클럽] 비기너 코딩테스트 스터디 TIL - LeetCode, 2500 1. 문제풀이1) 문제, Delete Createst Value in Each Row (LeetCode, 2500)You are given an m x n matrix grid consisting of positive integers.Perform the following operation until grid becomes empty:- Delete the element with the greatest value from each row. If multiple such elements exist, delete any of them.- Add the maximum of deleted elements to the answer.Note that the number of columns decreases by o..
[99클럽] 코딩테스트 스터디, 14일차 TIL - 비기너 (백준, 26042) 1. 문제풀이1) 문제, 식당 입구 대기 줄 (백준 26042)여러 명의 학생이 식사하기 위하여 학교 식당을 향해 달려가고 있다. 학교 식당에 도착한 학생은 식당 입구에 줄을 서서 대기한다. 학교 식당에 먼저 도착한 학생이 나중에 도착한 학생보다 식당 입구의 앞쪽에서 대기한다. 식사는 1인분씩 준비된다. 식사 1인분이 준비되면 식당 입구의 맨 앞에서 대기 중인 학생 1명이 식당으로 들어가서 식사를 시작한다. 식사를 시작한 학생은 항상 식사를 마친다. 학생이 학교 식당에 도착하고 식사가 준비되는 n개의 정보가 저장된 A가 주어진다. A에 저장된 첫 번째 정보부터 n번째 정보까지 순서대로 처리한 다음,식당 입구에 줄을 서서 대기하는 학생 수가 최대가 되었던 순간의 학생 수와 이때 식당 입구의 맨 뒤에 대기 ..
[99클럽] 코딩테스트 스터디, 13일차 TIL - 비기너 (백준, 25497) 1. 문제풀이1) 문제, 기술 연계마스터 임스 (백준, 25497)임스는 연계 기술을 사용하는 게임을 플레이 중에 있다. 연계 기술은 사전 기술과 본 기술의 두 개의 개별 기술을 순서대로 사용해야만 정상적으로 사용 가능한 기술을 말한다.하나의 사전 기술은 하나의 본 기술과만 연계해서 사용할 수 있으며, 연계할 사전 기술 없이 본 기술을 사용했을 경우에는 게임의 스크립트가 꼬여서 이후 사용하는 기술들이 정상적으로 발동되지 않는다. 그렇지만 반드시 사전 기술을 사용한 직후에 본 기술을 사용할 필요는 없으며, 중간에 다른 기술을 사용하여도 연계는 정상적으로 이루어진다. 임스가 사용할 수 있는 기술에는 1~9, L, R, S, K가 있다. 1~9는 연계 없이 사용할 수 있는 기술이고, L은 R의 사전 기술, S..
[99클럽] 코딩테스트 스터디, 12일차 TIL - 비기너 (백준, 2161) 1. 문제풀이1) 문제N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 한 장 남을 때까지 반복하게 된다.우선, 제일 위에 있는 카드를 바닥에 버린다. 그다음, 제일 위에 있는 카드를 제일 아래에 있는 카드 밑으로 옮긴다. 예를 들어 N=4인 경우를 생각해 보자.카드는 제일 위에서부터 1234 의 순서로 놓여있다.1을 버리면 234가 남는다.여기서 2를 제일 아래로 옮기면 342가 된다.3을 버리면 42가 되고, 4를 밑으로 옮기면 24가 된다.마지막으로 2를 버리고 나면, 버린 카드들은 순서대로 1 3 2가 되고, 남는 카드는 4가 된다. N이 주어졌을 때..
[99클럽] 코딩테스트 스터디, 11일차 TIL - 비기너 (프로그래머스, 같은 숫자는 싫어) 1. 문제풀이1) 문제배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면,arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다.arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다.배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. 제한사항배열 arr의 크기 : 1,000,000 이하의 자연수배열 arr의 원소의 크기 : 0보다 크거나..
[99클럽] 코딩테스트 스터디, 10일차 TIL - 비기너 (프로그래머스, 완주하지 못한 선수) 1. 문제풀이, 완주하지 못한 선수 (프로그래머스)1) 문제수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다.마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때,완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해 주세요. 제한사항- 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다.- completion의 길이는 participant의 길이보다 1 작습니다.- 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다.- 참가자 중에는 동명이인이 있을 수 있습니다. 2) 해석- 완주하지 못한 선수의..