코딩테스트

코딩테스트 일기 (BAEKJOON)

BAEKJOON / 백준 - JAVA 31712번 핑크빈 레이드

2024.05.11기준 - 브론즈3백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 각자 다른 사용 주기를 가지고 있는 스킬을 사용하여 핑크핀을 처리하는 문제입니다. 저는 반복문을 초로 계산하여 (해당 초) % (스킬 사용 주기)가 0이 되면 스킬을 사용하는 코드를 작성했습니다.먼저 세 마스코트의 스킬 사용 주기와 대미지, 그리고 핑크빈의 초기 체력이 입력으로 주어집니다.각 마스코트가 일정 주기마다 스킬을 사용하면서 핑크빈의 체력을 감소시킵니다.핑크빈의 체력이 0 이하가 되는 순간을 찾아 사냥이 종료됩니다.사냥이 종료되는 시점까지 걸린 시간을 계산하여 출력합니다.  코드import java.io.*;import java.util.*;public class Main { public stat..

코딩테스트 일기 (BAEKJOON)

BAEKJOON / 백준 - JAVA 14940번 쉬운 최단거리

2024.05.10기준 - 실버1백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 주어진 지도에서 목표 지점까지의 거리를 구하는 문제입니다. 문제 접근은 BFS 알고리즘을 이용하여 시작점부터 목표 지점까지의 모든 지점에 대한 거리를 계산을 해보았습니다. boolean[][] visit 변수로 이미 한 번 거리를 계산한 곳은true로 지정해 다시 거리를 잴 수 없도록 체크하는 변수를 생성합니다. find()라는 함수를 생성해 BFS를 계산을 했습니다. 큐에 처음 시작하는 시작점을 넣어줍니다. 우선 처음 시작점을 nowx, nowy로 받아 초기화 시켜줬습니다.그러고 처음 시작점의 길이는 0이므로 0으로 설정해주며 한 번 거리가 측정된 곳은 true로 설정해줍니다. 그 다음 큐에 size가 0이..

코딩테스트 일기 (BAEKJOON)

BAEKJOON / 백준 - JAVA 12871번 무한 문자열

2024.05.10기준 - 실버5백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 문자열 s와 t를 입력 받고 무한번 반복되는 문자열을 만들어야 합니다.그 후 두 문자열을 비교하여 같은지 확인하는 문제입니다. 저는 이 문제를 접근할때, 문자열이 서로 같으면 비교하기가 쉬울거 같아 문자열 길이를 먼저 계산한 후 접근했습니다.두 문자열의 길이를 비교하여 특정 길이를 결정합니다.- 문자열이 같은 경우 반복되도 같은 문자열이 나오기 때문에 길이를 늘리지 않습니다.- s문자열이 t문자열보다 크고 (s문자열길이) % (t문자열길이) 가 0이면 s문자열길이로 지정합니다.- t문자열이 s문자열보다 크고 (t문자열길이) % (s문자열길이) 가 0이면 t문자열길이로 지정합니다.- 그 외에는 s문자열길이 와 ..

코딩테스트 일기 (BAEKJOON)

BAEKJOON / 백준 - JAVA 11053번 가장 긴 증가하는 부분 수열

2024.05.10기준 - 실버2백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 다이나믹프로그래밍을 이용하여 풀 수 있는 문제입니다. 수열 A를 저장하는 arr배열과 해당 배열(arr[i])에 해당하는 최대 수열 길이를 저장하는 dp배열을 선언하여 문제에 접근했습니다. 초기에 dp값은 어떤 수가 나와도 자기 자신을 포함하고 있기 때문에 수열의 초기 길이는 1로 잡아줍니다. 현재 받은 값(i)와 현재 보다 작은 값(j)를 비교해 i가 j보다 클 경우를 구합니다.i가 j보다 크다면 그 중 가장 수열의 길이가 긴 dp값을 가져와 +1을 해주면 최대 수열의 길이가 구해지는 코드입니다.  코드import java.io.*;import java.util.*;public class Main { pu..

Coding_Slowly
'코딩테스트' 태그의 글 목록 (23 Page)