結果

問題 No.375 立方体のN等分 (1)
ユーザー jj
提出日時 2016-08-03 23:07:12
言語 Fortran
(gFortran 14.2.0)
結果
WA  
実行時間 -
コード長 1,513 bytes
コンパイル時間 1,496 ms
コンパイル使用メモリ 32,768 KB
実行使用メモリ 5,248 KB
最終ジャッジ日時 2024-11-06 23:45:59
合計ジャッジ時間 2,750 ms
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 25 WA * 7
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

subroutine sub(num,insuu,beki)
implicit none
integer*8::num,beki,tmp
integer*8,intent(in)::insuu
beki = 1
tmp = insuu
do while(MOD(num,tmp).eq.0)
beki = beki + 1
tmp = tmp * insuu
end do
num = num*insuu/tmp
beki = beki-1
return
end subroutine sub
subroutine bunkai(N, vinsuu, vbeki)
integer*8::N,i,j,indx,fsr
integer*8::vinsuu(15),vbeki(15)
integer*8::num,insuu,beki
integer*8,allocatable::furui(:)
fsr = FLOOR(sqrt(REAL(N)))
allocate(furui(fsr))
furui = 0
indx = 1
num = N
do i=2, fsr
if(furui(i).eq.1) cycle
if(MOD(num,i).ne.0) cycle
insuu = i
call sub(num,insuu,beki)
vinsuu(indx) = insuu
vbeki (indx) = beki
indx = indx + 1
if(num.eq.1) exit
do j=i+i,MIN(i*i,fsr),i
furui(j) = 1
end do
end do
if(num.ne.1) then
vinsuu(indx) = num
vbeki(indx) = 1
end if
end subroutine bunkai
program main
implicit none
integer*8::N,i,j
integer,parameter::limit=15
integer*8::vinsuu(limit),vbeki(limit)
integer*8::a,b,c,minimum
data vinsuu/limit*0/,vbeki/limit*0/
data a,b,c/3*1/
read *,N
call bunkai(N,vinsuu, vbeki)
do i = 15,1,-1
if(vinsuu(i).eq.0) cycle
do j=1,vbeki(i)
minimum = MIN(a,(MIN(b,c)))
if(minimum.eq.a) then
a = a * vinsuu(i)
else if(minimum.eq.b) then
b = b * vinsuu(i)
else
c = c * vinsuu(i)
end if
end do
end do
print '(i0," ",i0)', a+b+c-3,N-1
end program main
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0