結果
| 問題 |
No.527 ナップサック容量問題
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2018-04-10 22:39:25 |
| 言語 | Fortran (gFortran 14.2.0) |
| 結果 |
WA
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 644 bytes |
| コンパイル時間 | 352 ms |
| コンパイル使用メモリ | 32,512 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-06-26 21:02:29 |
| 合計ジャッジ時間 | 1,564 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 WA * 2 |
| other | AC * 25 WA * 12 |
コンパイルメッセージ
Main.f90:12:10:
11 | do i=0,size(g)
| 2
12 | g(i)=0
| 1
Warning: Array reference at (1) out of bounds (100001 > 100000) in loop beginning at (2)
Main.f90:12:14:
12 | g(i)=0
| ^
Warning: iteration 100001 invokes undefined behavior [-Waggressive-loop-optimizations]
Main.f90:11:9:
11 | do i=0,size(g)
| ^
note: within this loop
ソースコード
program main
implicit none
integer::n,m,i,j,k,v(100),w(100),valTarget,valMax=0,ma=-1,mi=1000000
integer::g(0:100000)
read*,n
do i=1,n
read(*,*)v(i),w(i)
valMax=valMax+v(i)
end do
read*,valTarget
do i=0,size(g)
g(i)=0
end do
do i=1,n
do j=100000-w(i),0,-1
g(j+w(i))=max(g(j+w(i)),g(j)+v(i))
end do
end do
do i=1,size(g)-1
if(g(i)==valTarget)then
mi=min(mi,i)
ma=max(ma,i)
end if
end do
print*,mi
if(valMax==valTarget)then
print*,"inf"
else
print*,ma
end if
end program