백준

Algorithm/백준

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

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

Algorithm/백준

백준 1436번 : 영화감독 숌(Java)

https://www.acmicpc.net/problem/1436 1436번: 영화감독 숌 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타 www.acmicpc.net [풀이] 브루트포스 알고리즘 문제이며, while 반복문에서 숫자를 하나씩 증가하면서 조건을 확인해야 한다. 조건은, 666이라는 숫자가 포함되어있는지 contains() 메소드를 이용해서 확인하면 된다. [코드] import java.io.*; public class Main { public static void main(String[] args) throws IOException { Buff..

Algorithm/백준

백준 1120번 : 문자열(Java)

https://www.acmicpc.net/problem/1120 1120번: 문자열 길이가 N으로 같은 문자열 X와 Y가 있을 때, 두 문자열 X와 Y의 차이는 X[i] ≠ Y[i]인 i의 개수이다. 예를 들어, X=”jimin”, Y=”minji”이면, 둘의 차이는 4이다. 두 문자열 A와 B가 주어진다. 이때, A의 www.acmicpc.net [풀이] A의 문자열이 더 짧으므로 B의 문자열의 앞부분부터 A의 문자열 길이만큼 for 반복문으로 비교하면된다. B의 문자열의 인덱스를 시도한 횟수만큼 더해주는 것에 신경써야한다. [주의해야할 부분] 문자열의 인덱스만 신경쓰면 될 것이라 생각한다. [코드] import java.io.*; import java.util.StringTokenizer; publ..

Algorithm/백준

백준 1543번 : 문서 검색(Java)

https://www.acmicpc.net/problem/1543 1543번: 문서 검색 세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한 www.acmicpc.net [풀이] 처음에, replaceFirst() 메소드를 이용하여 풀었지만, replace를 할 경우 인덱스에 대한 처리를 하지 못해서 다음과 같은 반례에 대처를 하지 못했다. (반례) aabb / ab / 답은 1이 나와야 하는데 2가 나오는 분들이 있을 것이다. 그렇기 때문에 for문을 돌면서 문자열 길이만큼 확인 후, 찾게 되었을 때 인덱스를 문자열 길이만큼 더하는 식으로 풀었다. (주의해야할 부분)..

Algorithm/백준

백준 20365번 : 블로그2(Java)

https://www.acmicpc.net/problem/20365 20365번: 블로그2 neighbor 블로그를 운영하는 일우는 매일 아침 풀고 싶은 문제를 미리 정해놓고 글을 올린다. 그리고 매일 밤 각각의 문제에 대하여, 해결한 경우 파란색, 해결하지 못한 경우 빨간색으로 칠한 www.acmicpc.net [풀이] - B와 R을 구분하여 ArrayList에 값을 추가하였다. 이를 통해 B는 몇 개있는지, R은 몇 개 있는지 확인 할 수 있다. - 최소한의 방법은 더 많은 색깔을 전체 칠한 후, 적은 개수의 색깔을 해당하는 위치에 덧칠하는 것이다. 그러므로 각 List의 크기를 비교하면 된다. - size() 메소드에 +1을 하는 이유는 처음 더 많은 수의 색깔을 전체 칠하기 때문이다. (주의해야할..

Algorithm/백준

백준 11060번 : 점프 점프(Java)

https://www.acmicpc.net/problem/11060 11060번: 점프 점프 재환이가 1×N 크기의 미로에 갇혀있다. 미로는 1×1 크기의 칸으로 이루어져 있고, 각 칸에는 정수가 하나 쓰여 있다. i번째 칸에 쓰여 있는 수를 Ai라고 했을 때, 재환이는 Ai이하만큼 오른쪽으로 www.acmicpc.net [풀이] 이전 값을 저장할 dp 배열과 입력 값을 저장할 arr 배열을 만들었다. 다음 위치로 점프할 수 있는 거리는 0~arr[i]이다. 그러므로, for 반복문을 돌면서 최소값을 dp 배열에 저장하면 된다. (주의해야할 부분) 다음 위치로 점프할 수 있는 거리는 최소 0부터 arr[i] 까지이다. 그러므로 이 부분에 해당하는 인덱스를 주의해서 풀어야 한다. [코드] public cl..

skyey94
'백준' 태그의 글 목록 (2 Page)