SWEA 11688 Calkin-Wilf tree 1 D3 (자바 Java)

java

SWEA 11688 Calkin-Wilf tree 1 문제 정보 문제 Calkin-Wilf tree는 모든 양의 유리수를 정확히 하나씩 포함하고 있는 트리다. 이 트리는 다음과 같이 정의된다    ∙ 트리의 루트는 1/1 을 나타낸다.    ∙ 트리의 각 노드는 왼쪽 자식과 오른쪽 자식을 가지는데 어떤 노드가 a/b 를 나타내고 있다면, 왼쪽 자식은 a/a+b 를 오른쪽 자식은 a+b/b 를 나타낸다.루트 노드에서부터, 자식을 따라 내려간 방향이 순서대로 주어질 때, 마지막에 위치한 노드가 어떤 유리수를 나타내는지 구하는 프로그램을 작성하라. 접근 … Read more

SWEA 11736 평범한 숫자 D3 (자바 Java)

java

SWEA 11736 평범한 숫자 문제 정보 문제 1 이상 N 이하의 정수가 적혀 있는 길이 N의 순열 p1, p2, …, pN이 있다. 수열에 있는 모든 숫자는 서로 다르다. 2 ≤ i ≤ N-1이며, pi-1, pi, pi+1 중 pi가 최솟값도, 최댓값도 아니라면 pi를 평범한 숫자라고 정의한다. 주어진 순열에서 평범한 숫자의 개수는 몇 개인가? 접근 반복문과 조건문을 활용해 문제를 풀었다. 풀이 후기 어렵지 않게 해결한 문제 코드

SWEA 11856 반반 D3 (자바 Java)

java

SWEA 11856 반반 문제 정보 문제 길이 4의 알파벳 대문자로 이루어진 문자열 S가 주어졌을 때, S에 정확히 두 개의 서로 다른 문자가 등장하고, 각 문자가 정확히 두 번 등장하는 지 판별하라. 접근 HashMap을 활용해 문제를 풀었다. 풀이 후기 어렵지 않게 해결한 문제 코드

SWEA 12221 구구단2 D3 (자바 Java)

java

SWEA 12221 구구단2 문제 정보 문제 아기 석환이는 최근 구구단을 배웠다. 그래서 1 이상 9 이하의 자연수 두개를 곱셈할 수 있으나, 10 이상의 자연수를 곱셈하는 방법은 모른다. 두 정수 A, B가 주어진다. 아기 석환이 두 정수를 곱셈할 수 있으면 곱을 출력하고, 아니면 -1을 출력하라. 접근 조건문을 활용해 문제를 풀었다. 풀이 후기 쉽게 해결한 문제 코드

SWEA 12368 24시간 D3 (자바 Java)

java

SWEA 12368 24시간 문제 정보 문제 하루는 24시간이다. 24시간제 시계에서는 하루가 자정에서 시작해서 다음 날 자정에서 끝나며, 자정에서부터 지금까지 흐른 시간을 기준으로 시각을 표기한다. 예를 들어, 지금이 오후 8시라면 “20시”와 같은 꼴로 표현할 수 있다. 자정을 표기하는 유일한 방법은 “0시”임에 유의하라. 지금은 자정에서부터 정확히 A시간이 지났다. 앞으로 정확히 B시간이 더 지난다면, 24시간제 시계에서 그 때는 … Read more

SWEA 13218 조별과제 D3 (자바 Java)

java

SWEA 13218 조별과제 문제 정보 문제 당신은 교수이다. 매주 월요일과 수요일 오전 9시부터 10시 30분까지 진행되는 당신의 수업에는 N명의 수강생이 있다. 당신은 학생들에게 조별과제를 부여하기 위해 학생들을 몇 개의 조로 나누려고 한다.  당신은 한 조가 2명 이하의 학생으로 구성되면 토론이나 업무 배분 등이 제대로 이루어지지 않아 팀워크를 평가할 기회를 박탈당한다고 생각한다. 따라서, 당신은 3명 이상의 … Read more

SWEA 13229 일요일 D3 (자바 Java)

java

SWEA 13229 일요일 문제 정보 문제 오늘의 요일을 나타내는 문자열 S가 주어진다. S는 “MON”(월), “TUE”(화), “WED”(수), “THU”(목), “FRI”(금), “SAT”(토), “SUN”(일) 중 하나이다. 다음 (즉, 내일 이후의 가장 빠른) 일요일까지는 며칠 남았을까? 접근 HashMap 을 사용하여 문제를 풀었다. 풀이 후기 비슷한 유형의 문제를 더 풀어볼 계획이다. 코드

SWEA 13547 팔씨름 D3 (자바 Java)

java

SWEA 13547 팔씨름 문제 정보 문제 소정이와 세정이는 점심 값을 누가 낼 지 정하기 위해 팔씨름을 하기로 했다. 공정하고 재밌는 경기를 위해 둘은 15번 팔씨름을 하여 8번 이상 이기는 사람이 점심 값을 면제받기로 하였다. 둘은 지금까지 k번의 팔씨름을 진행했다. 이 결과는 길이가 k인 ‘o’ 또는 ‘x’로만 구성된 문자열 S[1..k]로 나타낼 수 있다. S[i]가 ‘o’면 소정이가 i번째 경기에서 승리했다는 것이고, ‘x’면 패배했다는 것이다. 소정이는 앞으로 팔씨름을 15번째 경기까지 진행했을 때 자신이 점심값을 면제 받을 가능성이 있는지 알고자 한다. 이를 대신해 주는 프로그램을 작성하는 문제 접근 반복문과 조건문을 활용해 문제를 풀었다. 풀이 후기 쉽게 해결한 문제 코드

SWEA 13732 정사각형 판정 D3 (자바 Java)

java

SWEA 13732 정사각형 판정 문제 정보 문제 N×N 크기의 격자판이 있다. 각각의 격자는 비어 있거나(‘.’), 막혀 있다(‘#’). 이때, 막혀 있는 칸들이 하나의 정사각형을 이루는지를 판단하는 문제 접근 조건문을 활용해 문제를 풀었다. 풀이 후기 비슷한 유형의 문제를 더 풀어볼 계획이다. 코드