[백준] 15439번-베라의 패션-Java
[백준] 15439번-베라의 패션-Java ❓문제 상의 N벌과 하의 N벌이 있다. i번째 상의와 i번째 하의는 모두 같은 색상이며, N개의 색상은 모두 서로 다르다. 상,하의의 서로 다른 색상인 조합의 갯수를 출력하라. N의 범위 1 ≤ N ≤ 2017 🖊️풀이법 상의 {a,b,c,d,e} 와 하의 {a,b,c,d,e}가 있다고 가정해보자. 만약 상의 a를 고른다면 하의는 같은 색인 a를 제외하고 4가지를 선택할 수 있다. 만약 상의 b를 고른다면 하의는 같은 색인 b를 제외하고 4가지를 선택할 수 있다. 이와같은 방법을 반복하면, 하나의 상의에 4가지의 색의 하의를 선택할 수 있다. 이 방법을 수식으로 나타내면, N*(N-1)이라는 식으로 표현할 수 있다. 해당 수식을 N에 대입하여 출력한다. 정답 코..
2023. 7. 9.
[백준] 13909번-창문 닫기-Java
[백준] 13909번-창문 닫기-Java ❓문제 N개의 창문과 N명의 사람이 있을 때, N번째 사람은 N의 배수 번째 창문이 열려있으면 닫고, 닫혀있으면 연다. 해당 과정을 1부터 N번째 사람까지 반복한다. 예시 (N이 3인 경우) 3명의 사람과 3개의 창문이 존재한다. 1번째 사람은 1의 배수인 1,2,3번 창문을 연다. (1, 1, 1) 2번째 사람은 2의 배수인 2번 창문을 닫는다. (1, 0, 1) 3번째 사람은 3의 배수인 3번 창문을 닫는다. (1, 0, 0) 결과적으로 마지막에 열려 있는 창문의 개수는 1개이다. N의 범위 1 ≤ N ≤ 2,100,000,000 🖊️풀이법 해당 문제는 N의 수에 따라 결과 값을 패턴을 분석하면, 아주 가볍게 풀 수 있다. 우선 N의 범위부터 살펴보자. N의 ..
2023. 7. 9.
[백준] 17103번-골드바흐 파티션-Java
[백준] 17103번-골드바흐 파티션-Java ❓문제 골드바흐의 추측 : 2보다 큰 짝수는 두 소수의 합으로 나타낼 수 있다. 테스트 케이스의 개수 T와 각각의 케이스만큼의 N이 입력되었을 때 골드바흐 파티션의 개수를 구하라. 예시 : 4 -> 2+2로 1가지, 10-> 3+7, 5+5로 2가지 단, 3+7과 7+3의 케이스와 같이 두 소수의 순서만 다른 것은 같은 파티션으로 간주한다. T, N의 범위 1 ≤ T ≤ 100 2 ≤ N ≤ 1,000,000 🖊️풀이법 N의 범위가 최대 1,000,000까지만 소수를 찾으면 되기 때문에 크기가 1,000,001의 boolean타입의 배열을 만들어 푼다. 소수를 검증할 크기가 1,000,001인 boolean[] prime을 생성 해당 prime배열의 인덱스 ..
2023. 7. 9.