题目描述
数字47一向被数学界的人认为是很魔幻的一个数字,和47有关的任务被认为是魔幻任务。现在有一个简单的魔幻任务,给定a和b,打印所有在 以a,b为端点的闭区间 中最后两位为47的整数,你能一次AC吗??
输入
第一行为一个整数n,表示有多少组测试数据。(n <= 100)
第2-n+1行,每行两个整数,分别代表a,b。(a,b <= 10000)
输出
对于每组输入,输出在以a,b为端点的闭区间内且最后两位为47的整数,如果有多个,则从小到大排序输出;若一个都没有,则输出NONE。
示例输入
2 1 147 1 2
示例输出
47 147 NONE
要注意特殊情况:-200 47
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
int t,i;
while(cin>>t)
{
while(t--)
{
int a,b;
int s[105];
int flag=0;
cin>>a>>b;
if(a>b)
{
int t=a;
a=b;
b=t;
}
if(a>-47&&b<47)
{
cout<<"NONE"<<endl;
}
else if(a<0)
{
i=0;
int tmp=-47;
s[0]=-47;
while(tmp>=a)
{
if(tmp<=b)
s[++i]=tmp-100;
tmp-=100;
}
if(s[i]<a)
i=i-1;
for(int j=i;j>=0;j--)
cout<<s[j]<<endl;
int c=47;
while(c<=b)
{
if(c>=a)
cout<<c<<endl;
c+=100;
}
}
else
{
int c=47;
while(c<=b)
{
if(c>=a)
cout<<c<<endl;
c+=100;
}
}
}
}
return 0;
}