武汉科技大学ACM:1010: 电话号码
Problem Description
LXD打算换个手机号码,但是他去营业厅选号码的时候却把移动的客服小姐烦得不行,因为他太挑三捡四啦。对于一个手机号的后六位数字(前面五位他就无所谓了),LXD有很严格的要求,具体如下:
(1)一定要有数字x。
(2)不能有数字k。
(3)这个六位数的大小在区间[l,r]内。
(4)最少要有两个相邻的数字相同。
现在你要计算出这后六位数字有多少组是符合LXD要求的。
Input
第一行是一个正整数T,表示总共有T组数据。
接下来有T行(T组数据),每行有四个正整数x,k,l,r。0<=l<=r<=999999,0<=x,k<=9。
Output
每行输出一个整数,对应该组测试数据的答案,符合要求的号码数。
Sample Input
2
1 2 100000 100010
1 4 0 20
Sample Output
10
10
#include<stdio.h>
int is(int x,int m,int flag)
{
if(flag== && x== && m<)
{
return ;
}
int i,j;
i=m%;
j=m/;
if(j!= && i!=x)
return is(x,j,);
else if( i==x)
return ;
else
return ;
}
int not(int k,int m,int flag)
{
if(flag== && k== && m<)
{
return ;
}
int i,j;
i=m%;
j=m/;
if(j!= && i!=k)
return not(k,j,);
else if(i==k)
return ;
else
return ; } int dou(int m,int flag)
{
if(flag== && m<)
{
return ;
}
int a[];
for(int i=;i<;i++)
{
a[i]=m%;
m/=;
}
for(int j=;j<;j++)
{
if(a[j]==a[j+])
{
return ;
}
}
return ; }
int main()
{
int x,k,l,r;
int n,count;
while(scanf("%d",&n)!=EOF)
{
while(n--)
{
count=;
scanf("%d%d%d%d",&x,&k,&l,&r);
if(l>= && r>=l && r<= && x>= && k>= && x<= && k<=)
{
for(int i=l;i<=r;i++)
{
if(is(x,i,) && not(k,i,) && dou(i,))
count++;
}
printf("%d\n",count);
}
}
} return ;
}
武汉科技大学ACM:1010: 电话号码的更多相关文章
- 武汉科技大学ACM:1006: 我是老大
Problem Description 今年是2021年,正值武汉科技大学 ACM俱乐部成立10周年.十周年庆祝那天,从ACM俱乐部走出去的各路牛人欢聚一堂,其乐融融.庆祝晚会上,大家纷纷向俱乐部伸出 ...
- 武汉科技大学ACM:1010: 零起点学算法27——判断是否直角三角形
Problem Description 输入三个整数,分别代表三角形的三条边长度,判断能否构成直角三角形 Input 输入3个整数a,b,c(多组数据,-5000000<a,b,c<500 ...
- 武汉科技大学ACM:1010: 零起点学算法89——母牛的故事
Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛? Input 输入数据由多个测 ...
- 武汉科技大学ACM :1010: 零起点学算法103——一只小蜜蜂...
Problem Description 有一只经过训练的蜜蜂只能爬向右侧相邻的蜂房,不能反向爬行.请编程计算蜜蜂从蜂房a爬到蜂房b的可能路线数. 其中,蜂房的结构如下所示. Input 输入数据的第一 ...
- 武汉科技大学ACM :1010: 零起点学算法12——求2个日期之间的天数
Problem Description 水题 Input 输入2个日期,日期按照年月日,年月日之间用符号-隔开(题目包含多组数据) Output 求出这2个日期之间的天数(不包括自身),每组测试数据一 ...
- 武汉科技大学ACM :1010: 华科版C语言程序设计教程(第二版)例题7.8
Problem Description 输入一个用年月日表示的日期,求该日期是该年的第几天.输入某年的第几天,输出这一天是该年的几月几号,茂茂解不出,需要你的帮助. Input 开始有个整数k,表示询 ...
- 武汉科技大学ACM :1001: A+B for Input-Output Practice (I)
Problem Description Your task is to Calculate a + b. Too easy?! Of course! I specially designed the ...
- 武汉科技大学ACM:1009: 华科版C语言程序设计教程(第二版)习题5.12
Problem Description 这天老师照例给小豪出了一道题目:老师给小豪一个字符串,让小豪将该字符串逆序输出. Input 第一行包括一个T,表示有多少组测试数据: 接下来T行,每行包括一个 ...
- 武汉科技大学ACM:1008: 零起点学算法64——回型矩阵
Problem Description 输出n*m的回型矩阵 Input 多组测试数据 每组输入2个整数 n和m(不大于20) Output 输出n*m的回型矩阵,要求左上角元素是1,(每个元素占2个 ...
随机推荐
- Linux前传——今天的学习
感觉每天早上搞一个C语言的趣味题,很不错,算是比较实际的事情了.而且,好多都不会,主要是算法,也有很多语法不知道,这样补强很有用.嵌入式方面的课题进展有条不紊,感觉相关寄存器和I/O的使用必须通过大量 ...
- MYSQL主从同步测试
参考: http://www.cnblogs.com/zgx/archive/2011/09/13/2174823.html 注意选建同步用户,其它的都按步就搬. 还有,不要让IPTABLES坏事,开 ...
- 测试Flask+PYTHON的WEB框架
参数URL: http://blog.csdn.net/qwiwuqo/article/details/8970621 安装flask之前,你必须要先安装python和easy_install. 安装 ...
- ViewPage和ActionBar打造滑动视图
滑动效果非常流畅,可以将页签放置到ActionBar上,点击页签可以切换ViewPage,滑动ViewPage会同步更显Tabs. main.xml <?xml version="1. ...
- Cracking the coding interview--Q2.4
Write code to partition a linked list around a value x, such that all nodes less than xcome before a ...
- Linux&shell之如何控制脚本
写在前面:案例.常用.归类.解释说明.(By Jim) Ctrl+C组合键可以生产SIGINT信号Ctrl+Z组合键生产SIGTSTP信号,停止进程后程序仍然留在内存中,能够从停止的地方继续运行. 捕 ...
- POJ2248 A Knight's Journey(DFS)
题目链接. 题目大意: 给定一个矩阵,马的初始位置在(0,0),要求给出一个方案,使马走遍所有的点. 列为数字,行为字母,搜索按字典序. 分析: 用 vis[x][y] 标记是否已经访问.因为要搜索所 ...
- HDOJ(HDU) 2083 简易版之最短距离(中位数)
Problem Description 寒假的时候,ACBOY要去拜访很多朋友,恰巧他所有朋友的家都处在坐标平面的X轴上.ACBOY可以任意选择一个朋友的家开始访问,但是每次访问后他都必须回到出发点, ...
- wxPython学习笔记(一)
创建最小的空的wxPython程序 frame = wx.Frame(parent=None, title='Bare') frame.Show() return True app = App() a ...
- linux crontab 定时命令
一直认为Timer是比较好的实现定时器的方法,后来遇到在linux下的命令制定定时任务才发现,Timer的劣势所在,在Timer的时候很可能你的任务会被当做一个死程序被杀掉等等......上次一个同事 ...