結果
| 問題 |
No.429 CupShuffle
|
| コンテスト | |
| ユーザー |
jj
|
| 提出日時 | 2016-10-02 22:56:24 |
| 言語 | Fortran (gFortran 14.2.0) |
| 結果 |
AC
|
| 実行時間 | 68 ms / 2,000 ms |
| コード長 | 862 bytes |
| コンパイル時間 | 1,698 ms |
| コンパイル使用メモリ | 33,740 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-11-21 13:25:47 |
| 合計ジャッジ時間 | 1,538 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 16 |
ソースコード
program main
implicit none
integer::N,K,X,i,tmp
character::q(2)
integer,allocatable::A(:),B(:),C(:),cupi(:),cupf(:)
logical::is_first=.true.
read *,N,K,X
allocate(A(K),B(K),C(N),cupi(N),cupf(N))
do i=1,K
if(i.eq.X) then
read *,q
else
read *, A(i),B(i)
end if
end do
cupi = (/(i,i=1,N)/)
read *,cupf
! swap forward
do i=1,X-1
tmp = cupi(A(i))
cupi(A(i)) = cupi(B(i))
cupi(B(i)) = tmp
end do
! swap backward
do i=K,X+1,-1
tmp = cupf(A(i))
cupf(A(i)) = cupf(B(i))
cupf(B(i)) = tmp
end do
do i=1,N
if(cupi(i).ne.cupf(i))then
if(is_first.eqv..true.) then
is_first = .false.
write (*,'(i0," ")',advance='no') i
else
write (*,'(i0)',advance='yes') i
return
end if
end if
end do
end program main
jj