<코테 챌린지> 나무 조각 (백준 2947번)
❓ 문제동혁이는 나무 조각을 5개 가지고 있다. 나무 조각에는 1부터 5까지 숫자 중 하나가 쓰여져 있다. 또, 모든 숫자는 다섯 조각 중 하나에만 쓰여 있다.동혁이는 나무 조각을 다음과 같은 과정을 거쳐서 1, 2, 3, 4, 5 순서로 만들려고 한다.첫 번째 조각의 수가 두 번째 수보다 크다면, 둘의 위치를 서로 바꾼다.두 번째 조각의 수가 세 번째 수보다 크다면, 둘의 위치를 서로 바꾼다.세 번째 조각의 수가 네 번째 수보다 크다면, 둘의 위치를 서로 바꾼다.네 번째 조각의 수가 다섯 번째 수보다 크다면, 둘의 위치를 서로 바꾼다.만약 순서가 1, 2, 3, 4, 5 순서가 아니라면 1 단계로 다시 간다.처음 조각의 순서가 주어졌을 때, 위치를 바꿀 때 마다 조각의 순서를 출력하는 프로그램을 작성하..
2024. 10. 12.
<코테 챌린지> 생일 (백준 5635번)
❓ 문제어떤 반에 있는 학생들의 생일이 주어졌을 때, 가장 나이가 적은 사람과 가장 많은 사람을 구하는 프로그램을 작성하시오. 📥 입력첫째 줄에 반에 있는 학생의 수 n이 주어진다. (1 ≤ n ≤ 100)다음 n개 줄에는 각 학생의 이름과 생일이 "이름 dd mm yyyy"와 같은 형식으로 주어진다. 이름은 그 학생의 이름이며, 최대 15글자로 이루어져 있다. dd mm yyyy는 생일 일, 월, 연도이다. (1990 ≤ yyyy ≤ 2010, 1 ≤ mm ≤ 12, 1 ≤ dd ≤ 31) 주어지는 생일은 올바른 날짜이며, 연, 월 일은 0으로 시작하지 않는다.이름이 같거나, 생일이 같은 사람은 없다. 📤 출력첫째 줄에 가장 나이가 적은 사람의 이름, 둘째 줄에 가장 나이가 많은 사람 이름을 출력한..
2024. 10. 10.
(#4963 Java) 섬의 개수
문제 이해 건너갈 수 있는 경로가 있으면 같은 섬에 있다고 보고, 섬의 개수를 세는 문제이다. 이 문제는 dfs/bfs 문제로 풀 수 있다. 따로 테스트 케이스가 몇 개인지 주어지지 않고, w,h로 0이 주어지면 프로그램이 종료되므로, 0을 2개 입력 받기 전까지 반복해주면 된다. 그럼 문제를 해결해보자. 문제 해결 우선 내가 처음부터 생각하지 못했던 부분은 대각선도 이동할 수 있다는 부분이다. 상하좌우까지만 좌표설정을 해보았는데, 대각선은 처음이다. 대각선 이동은 (상+좌), (상+우), (하+좌), (하+우)의 네 가지 경우가 있으므로 아래와 같이 설정하면 된다. static int[] dx = {-1, -1, -1, 0, 0, 1, 1, 1}; static int[] dy = {-1, 0, 1, -..
2024. 3. 5.