[이코테][Java] 국영수
·
PS/이코테
문제 설명도현이네 반 학생 n명의 이름과 국어, 영어, 수학 점수가 주어집니다. 이 때, 다음과 같은 조건으로 학생의 성적을 정렬하는 프로그램을 작성하세요.1. 국어 점수가 감소하는 순서로2. 국어 점수가 같으면 영어 점수가 증가하는 순서로3. 국어 점수와 영어 점수가 같으면 수학 점수가 감소하는 순서로4. 모든 점수가 같으면 이름이 사전 순으로 증가하는순서로 입력조건첫째 줄에 학생 수 N둘째 줄부터 한 줄에 학생이름, 국어, 영어, 수학 점수1 이름은 알파벳 대소문자로 이루어진 문자열이고, 길이는 10자리를 넘지 않는다.출력조건정렬 기준에 맞게 정렬한 후 첫째 줄부터 N개의 줄에 걸쳐 학생 이름 출력 입출력 예시입력예시출력예시12 Junkyu 50 60 100 Sangkeun 80 60 50 Sunyo..
[이코테][Java] 안테나
·
PS/이코테
문제링크 : https://www.acmicpc.net/problem/18310문제 설명일직선상에 마을에 여러 채의 집이 위치해 있고, 이 중에서 특정 위치의 지에 특별히 한 개의 안테나를 설치하려고 한다. 효율성을 위해 안테나로부터 모든 집까지의 거리의 총합이 최소가 되도록 설치한다.이 때 안테나는 집이 위치한 곳에만 설치할 수 있고, 논리적으로 동일한 위치에 여러 개의 집이 존재하는 것이 가능하다.안테나를 설치할 위치를 선택하는 프로그램을 작성하세요. 입력조건첫째 줄에 집의 수 N둘째 줄에 N채의 집의 위치출력조건안테나를 설치할 위치 값 출력입출력 예시 입력예시출력예시45 1 7 95    문제 풀이입력받은 집의 위치를 오름차순 정렬한 후, 정확히 중간에 위치한 집을 선택한다.import java.i..
[이코테] 정렬(Sort)
·
PS/이코테
정렬정렬이란 데이터를 특정한 기준에 따라서 순서대로 나열하는 것을 말한다.일반적으로 문제 상황에 따라서 적절한 정렬 알고리즘이 공식처럼 사용되며, 가장 많이 사용되는 알고리즘 중 하나이다.예제 1) 위에서 아래로다양한 수로 이루어진 하나의 수열을 내림차순으로 정렬하는 프로그램을 만드시오. 문제 해설import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt..
[이코테][Java] 문자열 재정렬
·
PS/이코테
문제 설명알파벳 대문자와 숫자(0 ~ 9)로만 구성된 문자열이 입력으로 주어질 때, 모든 알파벳을 오름차순으로 정렬해서 출력한 후 그 뒤에 모든 숫자를 더한 값을 이어서 출력합니다. 입력조건하나의 문자열 S(1 출력조건문제에서 요구하는 정답 출력입출력 예시입력예시출력예시K1KA5CB7ABCKK13AJKDLSI412K4JSJ9DADDIJJJKKLSS20    문제 풀이입력받은 문자열 S에서 알파벳과 숫자를 구분해서 알파벳은 오름차순 정렬, 숫자는 모두 더해서 출력한다.import java.io.*;import java.util.ArrayList;import java.util.Collections;public class Main { public static void main(String[] args) ..
[이코테][Java] 럭키 스트레이트
·
PS/이코테
문제 설명게임에서 캐릭터의 필살기인 '럭키 스트레이트'는 현재 캐릭터의 점수를 N이라고 할 때, 자릿수를 기준으로 점수 N을 반으로 나누어 왼쪽 부분의 각 자릿수의 합과 오른쪽 부분의 자릿수의 합을 더한 값이 동일한 상황일 때만 사용할 수 있습니다.현재 점수 N이 주어지면 럭키 스트레이트를 사용할 수 있는 상태인지 아닌지를 알려주는 프로그램을 작성하세요. 입력조건첫째 줄에 점수 N(10 N의 자릿수는 항상 짝수출력조건럭키 스트레이트를 사용할 수 있으면 "LUCKY", 사용할 수 없으면 "READY"입출력 예시 입력예시출력예시123402LUCKY7755READY    문제 풀이점수 N을 String으로 입력받아서 문자열의 길이를 반으로 나눈다.left는 왼쪽 부분의 자릿수의 합, right는 오른쪽 부분의..
[이코테] 구현(Implementation)
·
PS/이코테
구현(Implementation)코딩테스트에서 구현이란 '머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정' 이다.풀이를 떠올리는 것은 쉽지만 소스코드로 옮기기 어려운 문제를 말한다. 구현 유형의 예시알고리즘은 간단한데 코드가 지나칠 만큼 길어지는 문제실수 연산을 다루고, 특정 소수점 자리까지 출력해야 하는 문제문자열을 특정한 기준에 따라서 끊어 처리해야하는 문제  일반적으로 알고리즘 문제에서의 2차원 공간은 행렬(Matrix)의 의미로 사용된다. for (int i = 0; i  완전 탐색, 시뮬레이션 유형을 '구현' 유형으로 분류하는데, 이러한 유형의 문제에서 2차원 공간에서의 방향 벡터가 자주 사용된다.//동, 북, 서, 남int[] dx = {0, -1, 0, 1};int[] dy = {-1, 0,..