package acm;
import java.util.Scanner;
public class B {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in =new Scanner(System.in);
int n,m;//n为一工的袜子数量,m为询问的次数
int l,r;//l,r为询问的区间
int i,j,k,o,g;
int x,y;//x为总共的可能性,y为取到相同颜色袜子的可能性
int[]a=new int [1000];
int[]b=new int [1000];
n=in.nextInt();
m=in.nextInt();
for(k=1;k<=n;k++)
{
a[k]=in.nextInt();
}
for(i=0;i<m;i++)
{
y=0;
for(int t=0;t<1000;t++)b[t]=0;
l=in.nextInt();
r=in.nextInt();
x=(l-r)*(l-r+1)/2;
for(o=l;o<=r;o++)
{
b[a[o]]++;////b数组的索引就是袜子颜色,对应的值就是该颜色袜子的数量
}
for(j=1;j<1000;j++)
{
if(b[j]>=2)
{
y=y+b[j]*(b[j]-1)/2;
}
}
if(y==0)
System.out.println("0/1");
else
{
g=gongyueshu(x,y);
x=x/g;y=y/g;
System.out.println(y+"/"+x);
}
}
public static int gongyueshu(int a,int b)
{
int k=1;
for(int i=a;i>=2;i--)
{
if(a%i==0 && b%i==0)
{
k*=i;
a/=i;
b/=i;
}
}
return k;
}
}
}
写错位置了