반응형

브루트포스 2

[ 백준_BOJ ] 2309. 일곱 난쟁이 _ JAVA 문제풀이

문제 풀이 총 아홉명의 난쟁이들의 키가 입력으로 주어집니다. 일곱 명의 난쟁이를 선택하기 위해 아홉명 중에서 두 명이 빠진 경우 중에서 일곱 난쟁이의 키가 100이 되는 경우를 찾았습니다. 먼저 난쟁이들의 키를 입력받았고 sum 변수에 난쟁이들의 키의 합을 저장했습니다. 가능한 경우에 대해서 오름차순으로 출력해야 하므로 Arrays.sort( ) 를 이용해 정렬하고 시작하였습니다. for문을 이용하여 두 명의 난쟁이를 제외시킵니다. 가장 바깥쪽에 있는 i와 j 를 이용해 두 명의 난쟁이를 찾고 만약 이 두 난쟁이의 키 값을 뺀 키의 합이 100이 될 경우 ( = sum - arr[ i ] - arr [ j ] == 100 ) 난쟁이의 키를 출력하도록 해주었습니다. 해당하는 난쟁이 조합을 찾으면 boole..

알고리즘 연습 2019.10.23

[ 백준_BOJ ] 1476. 날짜계산 _ 문제풀이 JAVA

문제 풀이 브루트포스 방식으로 문제를 풀었습니다. year와 연월일에 해당하는 e, s, m 을 모두 1씩 증가시켜주면서 입력으로 주어진 연월일과 같은 출력이 나올 때까지 계속 탐색합니다. 처음에는 % (mod) 연산을 이용해서 풀이를 하려 했지만 예를 들어 e가 16에 해당할 경우 e가 0이 아닌 1로 바뀌어야 하기 때문에 그냥 1씩 증가시켜주었습니다. 코드 출처 https://www.acmicpc.net/problem/1476 1476번: 날짜 계산 준규가 사는 나라는 우리가 사용하는 연도와 다른 방식을 이용한다. 준규가 사는 나라에서는 수 3개를 이용해서 연도를 나타낸다. 각각의 수는 지구, 태양, 그리고 달을 나타낸다. 지구를 나타내는 수를 E, 태양을 나타내는 수를 S, 달을 나타내는 수를 M이..

알고리즘 연습 2019.10.23
반응형