1,019 : B06- 그리 - 가공 부품 [향상 기]
제한 시간 : 1 초 메모리 제한 : 128 MB의제출 : 24 솔루션 : 7
[ 제출 ] [ 주 ] [ 토론 게시판 ] [제안 남자 : 외부 가져 오기]
제목 설명
부품의 최근 작은 장인 K n을 가공 할 수 있습니다. 각 부분이 완료 TI 일을 필요로 지연 처리의 매일의 각 부분은 어떤 좋은시를 지불해야합니다. 일 근무에 날부터 계산 지연 일 수는 첫 번째 부분은 잘 작동하지 않는 경우, 시작했다. 이제 작은 K는 주문 처리가 그를 최소한으로 벌금을 지불 할 수 배열하는 방법을 알고 싶어요, 최소이다.
이 값은 모듈로 m의 수가 매우 크고, 그 결과를 출력 할 수있다.
이 값은 모듈로 m의 수가 매우 크고, 그 결과를 출력 할 수있다.
기입
파일 이름 process.in을 입력합니다.
제 라인 입력 정수 n은, 부품의 수는 가공 할.
제 m의 정수를 실시 m은 응답하도록 모듈을 나타낸다.
의 3 ~ N + 2 행, 각 행에 두 개의 정수 TI와시.
제 라인 입력 정수 n은, 부품의 수는 가공 할.
제 m의 정수를 실시 m은 응답하도록 모듈을 나타낸다.
의 3 ~ N + 2 행, 각 행에 두 개의 정수 TI와시.
수출
출력 파일 이름 process.out.
오직 하나 개의 라인 출력 정수, K는 최소 모듈러스 m 지불 작은 페널티의 결과를 나타낸다.
오직 하나 개의 라인 출력 정수, K는 최소 모듈러스 m 지불 작은 페널티의 결과를 나타낸다.
샘플 입력
2 100 2 33 33 2
샘플 출력
4
신속한
[1] 입출력 샘플 설명
제 처리부는 이틀, 제 재가공 걸린다. 2 × 2 = 4의 벌금을 지불해야합니다.
샘플 2 [O] process.in
4
(100)
3 3
6 4
2 2
8 5
process.out
(81)
[O 2] 샘플 사전
1 → 2 → 3 → 4의 처리 순서는, 그것의 미세 지불 할 필요가있는 경우에는 0 × 3 + 3 + 4 × (3 + 6) × 2 +
(3 + 6 + 2) × 5 = 85;
최상의 해결책이 시간은 미세 0 × 2 + 2 × 3 + (2 + 3) × 4 + (+ 6 2 + 3) × 5 = 81을 지불해야하고, 3 → 1 → 2 → 4.
[데이터 범위]
데이터의 40 %, 0 < N- ≤10,000,0 < T I , S I ≤ 10,000;
0 <데이터의 80 % N- ≤100,000,0 < T I , S I ≤2 × 10 . 9 , 0 < m ≦ 10 . 8 ,
데이터의 100 %, 0 < N- ≤100,000,0 < 티타늄 , 실리콘 ≤ 2 × 10 . 9 , 0 < m ≦ 10 18이다 .
소스 / 분류
질문은 이렇게 열심히 오리 자처럼 보인다
위 () ( "만약", "생각")을 설명하는 선생님을 위해 발행
음, 양의 솔루션은 카드 카드에서 때문에 그것을 시도