您的位置:首页 > 其它

NYOJ-733 万圣节派对

2014-07-03 19:27 232 查看


万圣节派对

时间限制:1000 ms | 内存限制:65535 KB
难度:1

描述

万圣节有一个Party,XadillaX显然也要去凑热闹了。因为去凑热闹的人数非常庞大,几十W的数量级吧,自然要进场就需要有门票了。很幸运的,XadillaX竟然拿到了一张真·门票!这真·门票的排列规则有些奇怪:

门票号是由0~6组成的六位数(0~6这几个数字可重用)

每一个门票号的每一位不能有三个连续相同的数字(如123335是不行的)

每一个门票号相邻的两位相差必须在四以下(≤4)(如016245是不行的)

输入第一行一个n,代表输入个数

接下去n行,每行两个数字x,y(x <= y)
输出对于每个测试,输出x到y之间的门票编号。每个测试结尾之间空行。
样例输入
2
001001 001002
001011 001012


样例输出
001001
001002

001011
001012


c in,cout不过

01.
#include<iostream>


02.
#include<string>


03.
#include<cmath>


04.
#include<cstdio>


05.
using
namespace
std;


06.
int
main()


07.
{


08.
int
n;


09.
scanf
(
"%d"
,&n);


10.
while
(n--)


11.
{


12.
string
s;


13.
int
t1,t2;


14.
scanf
(
"%d%d"
,&t1,&t2);


15.
for
(
int
i=t1;i<=t2;i++)


16.
{


17.
int
f1=1,f2=1,f3=1;


18.
s[0]=i/100000+
'0'
;


19.
s[1]=i/10000%10+
'0'
;


20.
s[2]=i/1000%10+
'0'
;


21.
s[3]=i/100%10+
'0'
;


22.
s[4]=i/10%10+
'0'
;


23.
s[5]=i%10+
'0'
;


24.
for
(
int
j=0;j<6;j++)


25.
if
(s[j]-
'0'
>6)


26.
{


27.
f3=0;
break
;


28.
}


29.
for
(
int
j=0;j<4;j++)


30.
if
(s[j]-s[j+1]==0&&s[j]-s[j+2]==0)


31.
{


32.
f2=0;
break
;


33.
}


34.
for
(
int
j=0;j<5;j++)


35.
if
(
fabs
(s[j]-s[j+1])>4)


36.
{


37.
f1=0;
break
;


38.
}


39.
if
(f1==1&&f2==1&&f3==1)


40.
{


41.
for
(
int
j=0;j<6;j++)


42.
printf
(
"%c"
,s[j]);


43.
printf
(
"\n"
);


44.
}


45.
}


46.
printf
(
"\n"
);


47.
}


48.
return
0;


49.
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: