Zane the wizard had never loved anyone before, until he fell in love with a girl, whose name remains unknown to us.
The girl lives in house m of a village. There are n houses in that village, lining in a straight line from left to right: house 1, house 2, ..., house n. The village is also well-structured: house i and house i + 1 (1 ≤ i < n) are exactly 10 meters away. In this village, some houses are occupied, and some are not. Indeed, unoccupied houses can be purchased.
You will be given n integers a1, a2, ..., an that denote the availability and the prices of the houses. If house i is occupied, and therefore cannot be bought, then ai equals 0. Otherwise, house i can be bought, and ai represents the money required to buy it, in dollars.
As Zane has only k dollars to spare, it becomes a challenge for him to choose the house to purchase, so that he could live as near as possible to his crush. Help Zane determine the minimum distance from his crush's house to some house he can afford, to help him succeed in his love.
Input
The first line contains three integers n, m, and k (2 ≤ n ≤ 100, 1 ≤ m ≤ n, 1 ≤ k ≤ 100) — the number of houses in the village, the house where the girl lives, and the amount of money Zane has (in dollars), respectively.
The second line contains n integers a1, a2, ..., an (0 ≤ ai ≤ 100) — denoting the availability and the prices of the houses.
It is guaranteed that am = 0 and that it is possible to purchase some house with no more than k dollars.
Output
Print one integer — the minimum distance, in meters, from the house where the girl Zane likes lives to the house Zane can buy.
Examples
Input
5 1 20 0 27 32 21 19
Output
40
Input
7 3 50 62 0 0 0 99 33 22
Output
30
Input
10 5 100 1 0 1 0 0 0 0 0 1 1
Output
20
Note
In the first sample, with k = 20 dollars, Zane can buy only house 5. The distance from house m = 1 to house 5 is 10 + 10 + 10 + 10 = 40 meters.
In the second sample, Zane can buy houses 6 and 7. It is better to buy house 6 than house 7, since house m = 3 and house 6 are only 30 meters away, while house m = 3 and house 7 are 40 meters away.
C++版本一
#include <iostream>
#include <stdio.h>
#include <algorithm>
#include <string.h>
#include <math.h>
using namespace std;
int n,m,k;
int a[110];
int main()
{
scanf("%d%d%d",&n,&m,&k);
for(int i=1;i<=n;i++)
scanf("%d",&a[i]);
int min=0;
for(int i=m-1;i>=1;i--)
if(a[i]<=k&&a[i]!=0){
min=i;
break;
}
for(int i=m+1;i<=n;i++){
if(a[i]<=k&&a[i]!=0){
if(abs(m-i)<abs(m-min)||min==0){
min=i;
break;
}
}
}
cout << abs(m-min)*10 << endl;
//cout << "Hello world!" << endl;
return 0;
}
C++版本二
#include <iostream>
using namespace std;
const int SIZE = 105;
const int MAX = 1e8;
int housePrice[SIZE];
int main(int argc, char const *argv[])
{
int n, m, k;
while (~scanf("%d %d %d", &n, &m, &k))
{
for (int i = 1; i <= n; ++i)
{
scanf("%d", &housePrice[i]);
if (0 == housePrice[i])
{
housePrice[i] = MAX;
}
}
int rDis = 0, lDis = 0;
for (int i = m + 1; i <= n; ++i)
{
++rDis;
if (housePrice[i] <= k)
{
break;
}
if(i == n) rDis = MAX;
}
for (int i = m - 1; i >= 1; --i)
{
++lDis;
if (housePrice[i] <= k)
{
break;
}
if(i == 1) lDis = MAX;
}
if(0 == lDis) lDis = MAX;
if(0 == rDis) rDis = MAX;
printf("%d\n", (lDis < rDis) ? lDis * 10 : rDis * 10);
}
return 0;
}