 #include<iostream>
#include<iostream>
 #include<cstdio>
#include<cstdio>
 using namespace std;
using namespace std;

 int a[101];
int a[101];
 __int64 dp[101][101];//以第i个位置的元素结尾的长度为j的个数
__int64 dp[101][101];//以第i个位置的元素结尾的长度为j的个数

 int main()
int main()


 {
{
 int n,k;
    int n,k;
 while(cin>>n>>k)
    while(cin>>n>>k)

 
     {
{
 int i,j,p;
        int i,j,p;
 if(n == 0 && k == 0)
        if(n == 0 && k == 0)
 break;
            break;
 memset(dp,0,sizeof(dp));
        memset(dp,0,sizeof(dp));
 for(i = 1 ;i <= n;i++)
        for(i = 1 ;i <= n;i++)

 
         {
{
 scanf("%d",&a[i]);
            scanf("%d",&a[i]);
 dp[i][1] = 1;
            dp[i][1] = 1;
 }
        }
 for(j = 2; j <= k;j++)//个数
        for(j = 2; j <= k;j++)//个数
 for(i = j;i <= n;i++)//比较
            for(i = j;i <= n;i++)//比较
 for(p = j-1;p < i;p++)
                for(p = j-1;p < i;p++)

 
                 {
{
 if(a[i] > a[p])
                    if(a[i] > a[p])
 dp[i][j] += dp[p][j-1];
                        dp[i][j] += dp[p][j-1];
 }
                }
 __int64 sum = 0;
        __int64 sum = 0;
 for(i =k;i <= n;i++ )
        for(i =k;i <= n;i++ )
 sum += dp[i][k];
            sum += dp[i][k];
 printf("%I64d\n",sum);
        printf("%I64d\n",sum);
 }
    }
 return 0;
    return 0;
 }
}