본문 바로가기

전체 글

(168)
백준 9661 : 돌 게임 7 https://www.acmicpc.net/problem/9661 9661번: 돌 게임 7 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 1,000,000,000,000) www.acmicpc.net 시뮬레이션을 해보면 승패승승패가 반복되는 걸 확인할 수 있다. import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); BufferedReader br = new BufferedReader(new InputStreamReade..
백준 1111 IQ Test(Java) https://www.acmicpc.net/problem/1111 1111번: IQ Test 다음 수를 출력한다. 만약 다음 수가 여러 개일 경우에는 A를 출력하고, 다음 수를 구할 수 없는 경우에는 B를 출력한다. www.acmicpc.net 내 아이큐를 테스트하는 것 같은 문제.. arr[i+1] - arr[i]를 arr[i] - arr[i-1] 로 나누면 a를 구할 수 있다. 점화식을 세워보면 금방 알 수 있당 a를 구하면 b를 구하는 건 껌이다. A를 출력해야하는 상황과 B를 출력해야하는 상황을 잘 구별하는 게 이 문제의 핵심이다. 둘 모두 "주어진 배열의 다음 숫자"에 대한 것임을 명심하자! 만약 배열의 크기가 1이라면 그 다음에 어떤 숫자든 올 수 있다. --> A 예를 들어서 [3] 그 숫자..
백준 16946 벽 부수고 이동하기4(JAVA) https://www.acmicpc.net/problem/16946 16946번: 벽 부수고 이동하기 4 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 한 칸에서 다른 칸으로 이동하려면, 두 칸이 인접해야 한다. 두 칸이 � www.acmicpc.net 간만에 알고리즘을 푸려니까 잘 안된다 이 문제는 벽이 없는 구간들을 그룹화 하는게 중요하다. 1 0 0 1 0 1 1 0 0 0 1 0 0 0 1 0 위와 같은 인풋이 들어오면 다음과 같이 그룹화해준다. 1 10 10 1 11 1 1 12 11 11 1 12 11 11 1 12 각각을 그룹화 한 다음 Map에 그 그룹이 몇개인지 저장한다. 그룹 10 : 2 그룹 11 : ..