java

Algorithm/백준

백준 2822번 : 점수 계산(Java)

https://www.acmicpc.net/problem/2822 2822번: 점수 계산 8개 줄에 걸쳐서 각 문제에 대한 참가자의 점수가 주어진다. 점수는 0보다 크거나 같고, 150보다 작거나 같다. 모든 문제에 대한 점수는 서로 다르다. 입력으로 주어지는 순서대로 1번 문제, 2번 문 www.acmicpc.net [풀이] 문제의 개수는 8개로 정해져있기 때문에 배열의 크기는 8입니다. 2차원 배열로 만들며 인덱스 0의 열은 점수를, 인덱스 1의 열은 해당 인덱스를 저장합니다. 배열을 정렬할 때 기준은 내림차순으로 정렬하며 새로운 배열에 정렬된 배열의 인덱스 5개를 저장하고 다시 오름차순으로 정렬합니다. 이후, 계산된 답과 인덱스를 반환합니다. [코드] import java.io.BufferedRea..

Algorithm/백준

백준 18310번 : 안테나(Java)

https://www.acmicpc.net/problem/18310 18310번: 안테나 첫째 줄에 집의 수 N이 자연수로 주어진다. (1≤N≤200,000) 둘째 줄에 N채의 집에 위치가 공백을 기준으로 구분되어 1이상 100,000이하의 자연수로 주어진다. www.acmicpc.net [풀이] 주어지는 집들의 번호가 여러개일 때 항상 중위값에 위치한 집에 안테나를 설정하는 것이 가장 적절합니다. 그러므로, 정렬을 실시하여 배열의 중위값을 반환해야합니다. 중위값은 N이 짝수인지, 홀수인지에 따라 나뉘어지므로 이 부분을 구분하여 답을 출력해야합니다. [코드] import java.io.BufferedReader; import java.io.IOException; import java.io.InputStr..

Algorithm/백준

백준 1920번 : 수 찾기(Java)

https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들 www.acmicpc.net [풀이] 이분탐색 유형의 문제로 기본 개념을 익히기 좋은 문제라고 생각한다. 파이썬으로도 풀어보고, 자바로 두번째로 풀어보는데 다시 한번 개념을 익힐 수 있었다. A 배열을 입력받은 후, 이분탐색을 하기 이전에 정렬을 하는 것이 첫번째, 이분 탐색 메소드를 정의하는 것이 두번째 단계였다. [코드] import java.io.BufferedReader..

Algorithm/백준

백준 2776번(Java) : 암기왕

https://www.acmicpc.net/problem/2776 2776번: 암기왕 연종이는 엄청난 기억력을 가지고 있다. 그래서 하루 동안 본 정수들을 모두 기억 할 수 있다. 하지만 이를 믿을 수 없는 동규는 그의 기억력을 시험해 보기로 한다. 동규는 연종을 따라 다니며, www.acmicpc.net [풀이] N과 M은 100만개까지 입력이 가능하므로 '수첩1'을 정렬하여 이분탐색으로 '수첩2'에 해당하는 값을 찾았다. 찾은 값은 StringBuffer에 담았으며 이를 \n을 추가해서 답을 얻었다. 마지막에 \n이 있으면 틀렸다고 나와서 어쩔수 없이 if 조건문에 마지막의 경우 \n을 추가하지 않도록 했다. [코드] import java.io.BufferedReader; import java.io...

Algorithm/백준

백준 11650번 : 좌표 정렬하기(Java)

https://www.acmicpc.net/problem/11650 11650번: 좌표 정렬하기 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. www.acmicpc.net [풀이] 정렬의 기준을 정할 수 있는지, 없는지에 대한 공부를 할 수 있는 문제였다. Comparator 인터페이스를 통해 정렬의 기준을 문제에서 주어진 조건에 맞춰서 정렬하였다. (Comparator 인터페이스를 사용하는 법을 익히기 위한 연습문제로 좋은 것 같다!) [코드] import java.util.Arrays; import java...

Algorithm/백준

백준 1431번 : 시리얼 번호(Java)

https://www.acmicpc.net/problem/1431 1431번: 시리얼 번호 첫째 줄에 기타의 개수 N이 주어진다. N은 1,000보다 작거나 같다. 둘째 줄부터 N개의 줄에 시리얼 번호가 하나씩 주어진다. 시리얼 번호의 길이는 최대 50이고, 알파벳 대문자 또는 숫자로만 이루 www.acmicpc.net [풀이] Comparator 인터페이스를 오버라이딩하여 정렬 조건을 문제에서 주어진 조건에 맞게 설정하면 된다. 정렬의 조건을 정의할 수 있는지 없는지를 판단하는 문제였다. 나의 경우에는 Comparator 인터페이스를 오버라이딩하여 사용하였지만, 다른 분들의 코드를 살펴보니, 다른 방법으로 푸신 분도 많았다. 합을 판단할 때는 변수를 선언해서 조건문에서 문자인지, 숫자인지 판단하여 더하..

skyey94
'java' 태그의 글 목록 (16 Page)