술먹고 브론즈2 입출력 문제를 풀었는데 계속 틀렸다
후에 그 기억이 떠올라 바로 풀어버리려고했다
하지만 또 틀렸다
사나이 기백으로 풀었고 그 정리를 남긴다

N은 0, M은 1이 최소값으로 올수 있다
Ai는 0이 올수 있다
카드 세트가 없다면 하나를 빌려주기때문에
입력에 0이 오면 1로 바꿔준다
질문게시판에 작성된
아무것도 안하는 방법을
하나의 방법으로 생각한다는것은 잘못 되었다
틀린 이유:
경우의 수를 구할때 값이 커지는 상황에 대응하지 않았다
package org.problem.solving.BOJ.Java14551;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Java14551 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int N = Integer.parseInt(st.nextToken());
int M = Integer.parseInt(st.nextToken());
int ans = 1;
for (int i = 0; i < N; i++) {
int a = Integer.parseInt(br.readLine());
if (a == 0) a = 1; // 카드가 없으면 한세트 주기때문에 1
ans = (ans * a)%M;
// 최악의 경우 200개의 0이 사용된 정수가 저장될수 있어서
// M의 나머지값을 저장 해야 함
}
System.out.println(ans%M);
}
}'걸어서 개발 속으로' 카테고리의 다른 글
| 쿠버네티스 대시보드 ssh history (0) | 2026.01.23 |
|---|---|
| K3s 멀티노드 클러스터 구축 기록 (0) | 2026.01.23 |
| 서버에서 정렬 vs DB에서 정렬 (0) | 2024.05.15 |
| admin page를 위한 차트 구현의 잿빛로드 (1) | 2024.03.31 |
| https 지원(ssl) (0) | 2024.02.25 |
댓글