Description
1、门票号是由0~6组成的六位数(0~6这几个数字可重用)
2、每一个门票号的每一位不能有三个连续的数字(如123335是不行的)
3、每一个门票号相邻的两位相差必须在四以下(≤4)(如016245是不行的)
Input
接下去n行,每行两个数字x,y(x <= y)
Output
Sample Input
2 001001 001002 001011 001012
Sample Output
001001 001002 001011 001012
HINT
Source
#include<stdio.h>
#include<math.h>
int abs( int n )
{
if( n < 0 )
n = -n;
return n;
}
int main()
{
int a, b, num[10];
int n, m, i, j, t;
scanf( "%d", &n );
while( n-- )
{
scanf( "%d%d", &a, &b );
for( i = a; i <= b; i++ )
{
num[0] = i % 10;//各位
num[1] = i / 10 % 10;//十位
num[2] = i / 100 % 10;//百位
num[3] = i / 1000 ;
num[4] = i / 10000 % 10;
num[5] = i / 100000 % 10;
int k = 1;
for( j = 0; j < 4; j++ )
if((( num[j] == num[j+1] ) && ( num[j+1] == num[j+2] )) || ( num[j] > 6 ) || ( num[j+1] > 6 ) || ( num[j+2] > 6 ) || ( abs( num[j] - num[j+1]) > 4) || ( abs( num[j+2] - num[j+1]) > 4) )
k = 0;
if( k == 1 )
printf("d\n",i);
}
puts( "" );
}getchar();getchar();
return 0;
}