/*看英文和图我头都大了,不过很简单的。*/ #include<string.h> #include<stdio.h> int s[505][505],q[506],w[506]; int main(int argc, char* argv[]) { int t,n,m,i,j; int count; scanf("%d",&t); while(t--) { memset(s,0,sizeof(s)); count=0; scanf("%d%d",&n,&m); for(i=0;i<m;i++) scanf("%d",&q[i]); for(j=0;j<m;j++) scanf("%d",&w[j]); for(i=0;i<m;i++) { if(!s[q[i]][w[i]])/*防止重复访问*/ { count++; s[q[i]][w[i]]=1; s[w[i]][q[i]]=1; } } printf("%.3f\n",1.0*count/n); } return 0; }