結果

問題 No.590 Replacement
ユーザー vjudge1
提出日時 2024-11-10 12:33:28
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
TLE  
実行時間 -
コード長 523 bytes
コンパイル時間 557 ms
コンパイル使用メモリ 32,256 KB
実行使用メモリ 68,864 KB
最終ジャッジ日時 2024-11-10 12:33:34
合計ジャッジ時間 5,950 ms
ジャッジサーバーID
(参考情報)
judge4 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 7 TLE * 1 -- * 39
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<cstdio>
using namespace std;
const int N=1e4+10; int n,a[N],b[N]; bool vis[N][N];
int f(int x,int y) {
  for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) vis[i][j]=false;
  for(int i=0;;i++) {
    if(x==y) return i;
    if(vis[x][y]) return 0;
  	vis[x][y]=true,x=a[x],y=b[y];
  }
}
int main() {
  int ans=0; scanf("%d",&n);
  for(int i=1;i<=n;i++) scanf("%d",&a[i]);
  for(int i=1;i<=n;i++) scanf("%d",&b[i]);
  for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) (ans+=f(i,j))%=(int)(1e9+7);
  printf("%d",ans);
  return 0;
}
0