분류 전체보기

문제KOI 전자에서는 건강에 좋고 맛있는 훈제오리구이 요리를 간편하게 만드는 인공 지능 오븐을 개발하려고 한다. 인공지능 오븐을 사용하는 방법은 적당한 양의 오리 훈제 재료를 인공지능 오븐에 넣으면 된다. 그러면 인공지능 오븐은 오븐구이가 끝나는 시간을 분 단위로 자동적으로 계산한다.또한, KOI 전자의 인공지능 오븐 앞면에는 사용자에게 훈제오리구이 요리가 끝나는 시각을 알려주는 디지털시계가 있다.훈제오리구이를 시작하는 시각과 오븐구이를 하는 데 필요한 시간이 분단위로 주어졌을 때, 오븐구이가 끝나는 시각을 계산하는 프로그램을 작성하시오. 입력첫째 줄에는 현재 시각이 나온다. 현재 시각은 시 A (0 ≤ A ≤ 23)와 분 B (0 ≤ B ≤ 59)가 정수로 빈칸을 사이에 두고 순서대로 주어진다. 두 번..
문제n개의 서로 다른 양의 정수 a₁, a₂, ..., an으로 이루어진 수열이 있다.ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x(1 ≤ i  입력첫째 줄에 수열의 크기 n이 주어진다. 다음 줄에는 수열에 포함되는 수가 주어진다. 셋째 줄에는 x가 주어진다.(1 ≤ n ≤ 100000, 1 ≤ x ≤ 2000000) 출력문제의 조건을 만족하는 쌍의 개수를 출력한다. 입출력 예제 알고리즘❓ 풀어내기❗️1. 입력받은 숫자를 배열로 받는다.2. 배열을 정렬한다.3. 시작점 = 0, 끝점 = n - 1로 설정한 뒤 두 점에 위치한 원소끼리 더하며, 각 각 +1, -1 씩 인덱스를 옮겨간다.4. 위의 과정을 거치며 두 원소의 합이 X..
문제본격적으로 for문 문제를 풀기 전에 주의해야 할 점이 있다. 입출력 방식이 느리면 여러 줄을 입력받거나 출력할 때 시간초과가 날 수 있다는 점이다.C++를 사용하고 있고 cin / cout 을 사용하고자 한다면, cin.tie(NULL)과 sync_with_stdio(false) 를 둘 다 적용해 주고, endl 대신 개행문자(\n)를 쓰자. 단, 이렇게 하면 더 이상 scanf / printf / puts / getchar / putchar 등 C의 입출력 방식을 사용하면 안 된다.Java를 사용하고 있다면, input 대신 sys.stdin.readline 을 사용할 수 있다. 단, 이때는 맨 끝의 개행문자까지 같이 입력받기 때문에 문자열을 저장하고 싶을 경우 .rstrip()을 추가로 해주는 ..
문제초등학교 선생님 강산이는 아이들을 데리고 단체로 어떤 일을 할 때 불편함이 없도록 새로 반에 배정받은 아이들에게 키 순서대로 번호를 부여한다. 번호를 부여할 땐 키가 가장 아이가 1번, 그다음이 2번, ... , 가장 큰 아이가 20번이 된다. 강산이네 반 아이들은 항상 20명이며, 다행히도 같은 키를 가진 학생은 한 명도 없어서 시간이 조금 지나면 아이들은 자기들의 번호를 인지하고 한 줄로 세우면 제대로 된 위치에 잘 서게 된다.하지만 매년 첫 며칠간 강산이와 강산이네 반 아이들은 자기가 키 순으로 몇 번째인지 잘 알지 못해 아주 혼란스럽다. 자기 위치를 찾지 못하는 아이들을 위해 강산이는 특별한 방법을 생각해냈다. 우선 아무나 한 명을 뽑아 줄의 맨 앞에 세운다. 그리고 그 다음부터는 학생이 한 ..
문제N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. 출력첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다. 입출력 예제 알고리즘❓ 풀어내기❗️입력된 수를 배열에 담고 그 배열에 담겨있는 원소들을 정렬하면 된다. 🧑🏻‍💻코드 리뷰import java.io.*;import java.util.Arrays;public class Main {    public static void main(String[] args) throws IOException {        BufferedRea..
문제영식이는 직사각형 모양의 성을 가지고 있다. 성의 1층은 몇 명의 경비원에 의해서 보호되고 있다. 영식이는 모든 행과 모든 열에 한 명 이상의 경비원이 있으면 좋겠다고 생각했다.성의 크기와 경비원이 어디 있는지 주어졌을 때, 몇 명의 경비원을 최소로 추가해야 영식이를 만족시키는지 구하는 프로그램을 작성하시오. 입력첫째 줄에 성의 세로 크기 N과 가로 크기 M이 주어진다. N과 M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 성의 상태가 주어진다. 성의 상태는 .은 빈칸, X는 경비원이 있는 칸이다. 출력첫째 줄에 추가해야 하는 경비원의 최솟값을 출력한다. 입출력 예제 알고리즘❓ 풀어내기❗️모든 행과 열에 경비원이 최소 한 명씩 있어야 할 때, 추가로 필요한 경비원의 최소 수를 구하는..
· Git & GitHub
요 근래 알고리즘 공부를 하면서 GitHub Repository에 내가 작성한 코드를 열심히(?) 올리는 나날을 보내고 있다. 그러던 중 commit message를 잘못 작성한 일이 발생하였고 긴 내용은 아니지만 이를 해결한 과정을 글로 남겨보려 한다. 나는 아래와 같이 commit message에 키워드 규칙을 정해 놓았다. Solve로 작성해야 할 것을 Improve로 작성하는 실수를 하였다. 나 혼자 쓰는 Repository니까 그냥 넘어갈까 하다가 어차피 나중에 써먹어야 할 일, 짚고 넘어가기로 했다. 방법은 간단하다. git commit --amend 위의 명령어를 사용하여 가장 최근의 커밋 메시지를 변경할 수 있다. Git에서 커밋 메시지의 텍스트는 커밋의 일부이다. 커밋 메시지를 변경하면 ..
문제가로길이가 w이고 세로 길이가 h인 2차원 격자 공간이 있다. 이 격자는 아래 그림처럼 왼쪽 아래가 (0,0)이고 오른쪽 위가 (w, h)이다. 이 공간 안의 좌표 (p, q)에 개미 한 마리가 놓여있다. 개미는 오른쪽 위 45도 방향으로 일정한 속력으로 움직이기 시작한다. 처음에 (p, q)에서 출발한 개미는 1시간 후에는 (p+1, q+1)로 옮겨간다. 단, 이 속력으로 움직이다가 경계면에 부딪치면 같은 속력으로 반사되어 움직인다. 위 그림은 6×4 격자에서 처음에 (4,1)에서 출발한 개미가 움직인 길을 보여주고 있다. 처음메 (4,1)에 있는 개미는 2시간 후에 (6,3)에 있으며 8시간 후에 (0,1)에 있다. 만일 그 개미가 처음에 (5,3)에 있었다면 매시간마다 (6,4), (5,3), ..
송경훈
'분류 전체보기' 카테고리의 글 목록 (7 Page)