nyoj 破门锁(水题)
64-bit integer IO format: Java class name:
几年前,在孙老大担任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
对临界点特殊处理...
代码:
#include <iostream>
#include <cstring>
#include <string>
using namespace std;
int map[][][],ans;
int n;
void cmp(int x,int y,int z)
{
int i,j,k,p,q,m;
for(i=-;i<=;i++)
{
for(j=-;j<=;j++)
{
for(k=-;k<=;k++)
{
p=x+i;q=y+j;m=z+k;
while(p<=||p>n||q<=||q>n||m<=||m>n)
{
if(p<=) p=n+p;
if(p>n) p=p%n;
if(q<=) q=n+q;
if(q>n) q=q%n;
if(m<=)m=n+m;
if(m>n) m=m%n;
}
if(!map[p][q][m])
{
ans++;
map[p][q][m]=;
}
}
}
}
}
int main()
{
int k,x,y,z,x1,y1,z1;
cin>>k;
while(k--)
{
ans=;
cin>>n;
memset(map,,sizeof(map));
cin>>x>>y>>z;
cin>>x1>>y1>>z1;
cmp(x,y,z);
cmp(x1,y1,z1);
cout<<ans<<endl;
}
return ;
}
nyoj 破门锁(水题)的更多相关文章
- nyoj 525 一道水题【字符串(分割)】
参考:https://blog.csdn.net/dxx_111/article/details/48154687 #include <iostream> #include <cst ...
- nyoj 1208——水题系列——————【dp】
水题系列 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 给你一个有向图,每条边都有一定的权值,现在让你从图中的任意一点出发,每次走的边的权值必须必上一次的权 ...
- NYOJ-525一道水题思路及详解
一道水题 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 今天LZQ在玩一种小游戏,但是这游戏数有一点点的大,他一个人玩的累,想多拉一些人进来帮帮他,你能写一个程序帮帮他 ...
- HDOJ 2317. Nasty Hacks 模拟水题
Nasty Hacks Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
- ACM :漫漫上学路 -DP -水题
CSU 1772 漫漫上学路 Time Limit: 1000MS Memory Limit: 131072KB 64bit IO Format: %lld & %llu Submit ...
- ytu 1050:写一个函数,使给定的一个二维数组(3×3)转置,即行列互换(水题)
1050: 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 154 Solved: 112[ ...
- [poj2247] Humble Numbers (DP水题)
DP 水题 Description A number whose only prime factors are 2,3,5 or 7 is called a humble number. The se ...
- gdutcode 1195: 相信我这是水题 GDUT中有个风云人物pigofzhou,是冰点奇迹队的主代码手,
1195: 相信我这是水题 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 821 Solved: 219 Description GDUT中有个风云人 ...
- BZOJ 1303 CQOI2009 中位数图 水题
1303: [CQOI2009]中位数图 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 2340 Solved: 1464[Submit][Statu ...
随机推荐
- kernel 于ioctl申请书
ioctl经营无纸装置频繁使用的类型.同时这是一个非常实用的方法进程调试. 这里正在进行wdt该文章继续 static long at91_wdt_ioctl(struct file *file, u ...
- Codeforces Round #223 (Div. 2)--A. Sereja and Dima
Sereja and Dima time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...
- Directx11学习笔记【十六】 光照模型的实现
本文由zhangbaochong原创,转载请注明出处http://www.cnblogs.com/zhangbaochong/p/5579289.html 在之前的场景绘制中我们都是给每个顶点指定了单 ...
- [小结][N种方法]实现WPF不规则窗体
原文:[小结][N种方法]实现WPF不规则窗体 WPF实现不规则窗体,方法很多很多多.... 本文总结DebugLZQ认为简洁高效的几种方法 实现WPF不规则窗体的几种常用的方法如下: 1.使用Ble ...
- POJ 3177 Redundant Paths POJ 3352 Road Construction(双连接)
POJ 3177 Redundant Paths POJ 3352 Road Construction 题目链接 题意:两题一样的.一份代码能交.给定一个连通无向图,问加几条边能使得图变成一个双连通图 ...
- Twitter实时搜索系统EarlyBird
twitter要存档tweet采用lucene做全量指数,新发型是实时索引推文.检索实时(10在几秒钟内指数).实时索引和检索系统,称为EarlyBird. 感觉写更清晰,简洁,这个信息是真实的,只有 ...
- 从零开始做UI-静电的sketch设计教室 视频教程
全套31集目录 01-初识Sketch http://www.ui.cn/detail/52223.html02-sketch的下载与安装 http://www.ui.cn/detail/5222 ...
- BZOJ 3236 AHOI 2013 作业 莫队算法
题目大意:给出一些数,问在一个区间中不同的数值有多少种,和在一个区间中不同的数值有多少个. 思路:因为没有改动,所以就想到了莫队算法.然后我写了5K+的曼哈顿距离最小生成树,然后果断T了.(100s的 ...
- USB OTG简要
1 介绍 随着USB2.0发布版本号,USB更受欢迎.它已成为一种标准接口.现在,USB它支持三种速度:低速(1.5Mb/s).全速(12Mb/s)速(480Mb/s),四种传输类型:块传输.同步传输 ...
- 【C语言探索之旅】 开宗明义及第一课:什么是编程?
内容简介 1.课程大纲 2.第一部分第一课:什么是编程? 3.第一部分第二课预告:工欲善其事,必先利其器 课程大纲 不知道为什么,一直对C语言有一种很深厚的“情怀”(类似老罗对锤子手机的那种),说 ...