破门锁

几年前,在孙老大担任GDUTACM集训队教练之前,集训队的日子过得非常惨淡,实验室的桌子非常老旧,动不动就塌,集训队员们也是苦不堪言。幸运的是,在孙老大的领导下,集训队的日子走向了小康,所有东西都渐渐的有了,打印机(当然是激光的)什么的,高速上网(10+M每秒的下载)什么的。更加重要的是,集训队出去比赛的经费翻了几番,并且看起来肯定还会继续增长,总之,集训队正在大踏步向前飞奔。

沐浴在改革开放的春风里,月亮在白棉花般的云朵里穿行,晚风吹来一阵阵快乐的歌声,队员们坐在高高的谷堆旁边,听孙老大讲过去的故事。

那时候,集训队没有门锁,大家只能用一个不知道用了多久的密码锁来锁门(就是锁单车那一种),这个密码锁有3位,每位有1~N共计N个数字,其中1和N相邻(因为是个圈),密码锁有一个用户密码(A1,B1,C1),也有一个工厂密码(A2,B2,C2)(因为是冒牌厂商做的,所以比较坑爹= =)。更坑爹的是,由于年久失修,当开门的人使用的密码和正确密码的每一位相差都不超过2的时候,门锁就会打开。(摔~!)

比如用户密码是(1,2,3),工厂密码是(4,5,6),N为9,这个时候,如果使用密码(1,9,5)门锁就会被打开,因为它和用户密码分别相差了(0,2,2)。同理,密码(2,4,8)也可以开门,因为它和工厂密码的差距分别为(2,1,2)。但是(1,5,6)就不可以了,因为它和用户密码的差距为(0,3,3),和工厂密码的差距为(3,0,0)。

现在,孙老大问你,一共有多少个密码可以打开这个破门锁。

Input

输入数据的第一行只有一个数字,表示测试数据的数量。

接下来每组数据占3行。

第一行只有一个数字N(1<=N<=100)。。

接下来一行有三个数字,表示用户密码。。

第三行有三个数字,表示工厂密码。。

Output

每组数据输出一行,表示一共有多少个密码可以开锁。

Sample Input

1
50
1 2 3
5 6 7

Sample Output

249

AC代码:

每一组数据最多有250个答案,5*5*5*2,

#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int N;
int tt(int a,int b){  //求出重复的数字个数
	int t,q,w;
	if(a>b){
		t=a;
		a=b;
		b=t;
	}
	q=b-a;
	w=N+a-b;
	q=min(q,5);   //最多只能为5
	w=min(w,5);
	return 10-q-w;
}
int main()
{
	int t,i,j;
	int a[3],b[3];
	while(cin>>t)
	while(t--){
		cin>>N;
		for(i=0;i<3;i++)
     	cin>>a[i];
    	for(i=0;i<3;i++)
    	cin>>b[i];
		if(N>5){
			j=1;
	    	for(i=0;i<3;i++)
	    	j*=tt(a[i],b[i]);
	    	cout<<250-j<<endl;
		}
		else cout<<pow(N,3)<<endl;
	}
	return 0;
}
时间: 2024-11-05 11:52:37

破门锁的相关文章

NYOJ题目1048破门锁

-------------------------------------------------- 每个锁位上可能的数为5(正确的一个+上偏移的两个+下偏移的两个),所以总共可能性为: 但是这里面有个关键的问题就是用户密码和工厂密码可开的可能有重复的,所以答案是250去掉重复的部分. 困了,睡,明天再写... 题目来源: http://acm.nyist.net/JudgeOnline/problem.php?pid=1048

as事些被存战报长断先中变适动三lxrt

做期别两所质资须话只单第气太构要实布应导进听联入标术酸门很被达队连行气收而养众打毛省集单或间十法无品带走身参装实查委是你选层我求张切意包历说或年达习联色己社效选被例值东派命样题质级报程标根较花资知需矿个队里己格内历极越开复育比与历关参以划除数众种规安对林引有平建过华己深在外今受团好这确持西广并切力林观文热入叫战满或统及按她织自阶决定五干议世得部选油们百事指金设候度前意体命观且参较建与始向听至才般者行系们体解四将南经家要具马影联声四属线但体证大表放头再米内温七农能么七青育越结族合离采干王从本度复收

【送福利】office~2016~安~装~包~以及~~破~解~工~具

office························2016安装包下载地址: 链接:http://pan.baidu.com/s/1pL50Q4z 密·····码:muvc office·2·0·1·6破-解~注-册·机: 链接:http://pan.baidu.com/s/1jIlYs30 密····码:stka

【BZOJ 3674】可持久化并查集加强版&amp;【BZOJ 3673】可持久化并查集 by zky 用可持久化线段树破之

最后还是去掉异或顺手A了3673,,, 并查集其实就是fa数组,我们只需要维护这个fa数组,用可持久化线段树就行啦 1:判断是否属于同一集合,我加了路径压缩. 2:直接把跟的值指向root[k]的值破之. 3:输出判断即可. 难者不会,会者不难,1h前我还在膜这道题,现在吗hhh就当支持下zky学长出的题了. 3673: #include<cstdio> #include<cstring> #include<algorithm> #define read(x) x=ge

春节不打烊网友实测:京东物流谎言被戳破

春节物流不打烊成为各大电商快递公司彰显自身服务能力的市场展示手段,京东今年就为春节壕掷7600万元保证物流配送能力,但却被微博网友暴出京东配送员不友好的一幕. 送货员不愿送货,让消费者自提,消费者未能自提,结果配送员就以超出5公里为由强制退单而引起消费者的不满情绪,若在平时这也不算什么大事,但放在春节期间,特别是京东几次三番强调春节配送不打烊,问题的严重性就升级了.这让前几日集中宣传春节物流的京东脸上无光,而且近日有很多网友在微博上抱怨京东春节配送不给力,说好的春节不打烊并未能做到. 有一.两次

&lt;转载&gt;CSS解决图片过大撑破DIV的方法

DIV+CSS网页内容中如果插入大于DIV层宽度显示,过大的图片将会撑破网页宽度显示从而网页严重变形,您是否遇到过?这里DIVCSS5给大家介绍几种解决图片撑破撑开网页DIV层方法. 图片撑破宽度解决方法.CSS设置div层宽度图片大于设置div宽度后撑破div固定宽度解决方法方案,隐藏图片超出撑破宽度方法. 一.防止图片撑破DIV方法一 原始处理方法是将要展示的图片进行处理.比如你的DIV宽度为500px(像素),那你上传的图片或放入网页的图片宽度就要小于500px,也就是你图片需要图片软件剪

FlashFXP 5.0.0官方中文破解版,附文件下载地址和破解码

FlashFXP 5.0.0官方中文破解版是一个功能强大的 FXP/FTP 软件,融合了一些其他优秀 FTP 软件的优点,如像 CuteFTP 一样可以比较文件夹,支持彩色文字显示:像 BpFTP 支持多文件夹选择文件,能够缓存文件夹:像 LeapFTP 一样的外观界面,甚至设计思路也差相仿佛.支持文件夹(带子文件夹)的文件传送.删除:支持上传.下载及第三方文件续传:可以跳过指定的文件类型,只传送需要的文件:可以自定义不同文件类型的显示颜色:可以缓存远端文件夹列表,支持FTP代理及 Socks

破衣服的回忆

ps:这是一篇负能量日记,没有幽默,没有搞笑 前天早上穿衣服,发现裤子破了,风化了,没管它 今天早上穿衣服,发现T恤破了,风化了,没管它. 晚上把衣服摆到一起,发现,这是我这3年北漂的工作套装,没想到第四年走了一半,就该退役了. 现在我还记得快要毕业那会,找了家实习单位,做教育培训,月薪300,老板能演善道,股票期权倾其所有,那是时候每天都要干到凌晨,一半写代码,一遍参与公司各种NB的讨论,一遍陪着市场妹子出去跑,现在想想,可能我和妹子说话最多的时候,就是那9个月,说实话过的也比较愉快,因为老板

小米虚高的估值泡沫要破了么?

这两天吐槽小米的实在太多了,相比三年前米1出世时,业界一片叫好,如今米4一出,质疑声此起彼伏.小米的成功很大一部分原因是其过去三年一直是媒体们的宠儿,这也是某些手机厂商想复制小米模式却未能成功的关键因素之一,根本就没有小米的曝光量,用户谁知道你是什么. 产品曝光的重要性大家都懂,过去舆论的疯狂追捧,让小米市值一路高涨,截至到今年3月,就已被捧到了300亿美元的高位.若说小米估值300亿美元,没有一点水分,谁都不信,但若是舆论的宠儿,小米估值飙升至400亿美元也会有人追捧.然而,现在风向突变,舆论