题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5641

题目类型:水题

题目思路:将点x到点y所需要跨过的点存入mark[x][y]中(无需跨过其它点存0),然后按照题目给的路径逐一判断是否可走,得出结果。

需要判断的:

1.给出的点是否在1~9之间

2.点的数量n是否在4~9之间

3.有没有重复的点

4.两点之间(x-->y)是否需要跨过第三点(z),该点(z)是否已经走过

测试样例(基本考虑了所有情况):

10
4 1 3 6 2
4 6 2 1 3
4 8 1 6 7
6 2 1 2 3 5 7
6 1 5 8 2 6 7
5 4 2 8 5 6
5 12 3 4 5 6
7 0 1 2 3 4 5 6
3 1 5 9
9 1 5 9 4 2 6 3 7 8 1.invalid
2.valid
3.valid
4.invalid
5.valid
6.invalid
7.invalid
8.invalid
9.invalid
10.valid

实现代码:

 #include <stdio.h>
#include <string.h>
#include <stdlib.h> //若从i->j 必须经过其它点,存入mark[i][j]中,否则mark[i][j]为0
int mark[][] = {
{ , , , , , , , , , },
{ , , , , , , , , , },
{ , , , , , , , , , },
{ , , , , , , , , , },
{ , , , , , , , , , },
{ , , , , , , , , , },
{ , , , , , , , , , },
{ , , , , , , , , , },
{ , , , , , , , , , },
{ , , , , , , , , , }
}; //a[]存走的路线
int a[]; //num[]统计各个点出现的次数
int num[]; //flag[]记录各个点是否被走过,0表示未走,1表示已走
int flag[]; int main()
{
int T;
int n;
int i, ans;
scanf("%d", &T);
while (T--)
{
scanf("%d", &n);
ans = ;
memset(a, , sizeof(a));
memset(num, , sizeof(num));
memset(flag, , sizeof(flag));
for (i = ; i <= n; i++)
{
scanf("%d", &a[i]);
if(a[i]< || a[i]>) //点是否在范围内
ans = ;
}
if(!ans)
{
printf("invalid\n");
continue;
}
for(i=; i<=n; i++)
num[a[i]]++;
for (i = ; i <= ; i++) {
if (num[i] > )
break;
}
if (n < || n > || i<) //点的数量是否在范围内,各点是不是最多只有一个
{
printf("invalid\n");
continue;
}
int x, y;
for (i = ; i < n; i++) //n个点会有n-1条线
{
x = a[i];
y = a[i + ];
if ( (mark[x][y] != ) && (flag[mark[x][y]] == ) )
{
ans = ; //如果x->y需要跨过点mark[x][y],而mark[x][y]未走过,则不可行
break;
}
flag[x] = ;
}
if (ans)
printf("valid\n");
else
printf("invalid\n");
}
return ;
}

hdu 5641 King's Phone的更多相关文章

  1. HDU 5641 King's Phone 模拟

    King's Phone 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5641 Description In a military parade, ...

  2. hdu 5641 King's Phone(暴力模拟题)

    Problem Description In a military parade, the King sees lots of new things, including an Andriod Pho ...

  3. HDU 5641 King's Phone【模拟】

    题意: 给定一串密码, 判断是否合法. 长度不小于4 不能重复经过任何点 不能跳过中间点,除非中间点已经经过一次. 分析: 3*3直接记录出可能出现在两点之间的点,直接模拟就好. 注意审题,别漏了判断 ...

  4. hdu 5641 BestCoder Round #75

    King's Phone  Accepts: 310  Submissions: 2980  Time Limit: 2000/1000 MS (Java/Others)  Memory Limit: ...

  5. HDU 5642 King's Order dp

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5642 King's Order  Accepts: 381  Submissions: 1361   ...

  6. HDU 5644 King's Pilots 费用流

    King's Pilots 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5644 Description The military parade w ...

  7. HDU 5643 King's Game 打表

    King's Game 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5643 Description In order to remember hi ...

  8. HDU 5642 King's Order 动态规划

    King's Order 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5642 Description After the king's speec ...

  9. HDU 5640 King's Cake GCD

    King's Cake 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5640 Description It is the king's birthd ...

随机推荐

  1. ActiveX(四) mshtml 命名空间 重要接口简介

    在上一篇随笔 ActiveX(三)ActiveX 调用 Js 中,我们已经可以获得js中window对象的强类型接口.即 mshtml.IHTMLWindow2 ,通过该接口.我们可以调用js函数.那 ...

  2. DDL/DML是什么?

    DDL:(Data Definition Language)数据库定义语言 它是定义数据库的语言, 里面包含: CREATE ALTER DROP TRUNCATE COMMENT RENAME DM ...

  3. 背水一战 Windows 10 (19) - 绑定: TemplateBinding 绑定, 与 RelativeSource 绑定, 与 StaticResource 绑定

    [源码下载] 背水一战 Windows 10 (19) - 绑定: TemplateBinding 绑定, 与 RelativeSource 绑定, 与 StaticResource 绑定 作者:we ...

  4. 纪念品分组 2007年NOIP全国联赛普及组

    题目描述 元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作.为使得参加晚会的同学所获得的纪念品价值相对均衡,他要把购来的纪念品根据价格进行分组,但每组最多只能包括两件纪念品,并且每组纪念品的价格 ...

  5. 使用PowerDesigner设计建造MySQL数据库

    使用PowerDesigner设计建造MySQL数据库 一.使用PowerDesigner制作建库脚本 1.设计CDM(Conceptual Data Model) 2.选择 Tools -> ...

  6. Javascript:Javascript数据类型详解

    要成为一个优秀的前端工程师,系统的学习Javascript,有夯实的Javascript基础,以及对语言本身的深刻的理解,是基本功.从Javascript数据类型开始,我将对Javascript知识体 ...

  7. OData V4 系列 .net应用

    OData 学习目录 添加 OData Client Code Generator 扩展 添加OData T4生成工具 修改 T4 模板的 MetadataDocumentUri 运行Web项目,之后 ...

  8. 多个精美的导航样式web2.0源码

    效果体验:http://keleyi.com/keleyi/phtml/divcss/6.htm 兼容多浏览器,例如IE,Chrome,火狐 等. 完整代码,保存到htm文件打开也可以查看效果: &l ...

  9. 原生JS:严格模式详解

    严格模式 本文参考MDN做的详细整理,方便大家参考[MDN](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript) 设计目的 设立”严格模式 ...

  10. 一次部署HTTPS的相关事件引发的思考

    前言: 上周五快要下班的时候,突然收到通知客户希望了解一下部署HTTPS的流程,这种事情谁听了都会有几分诧异的.因为这件事虽然和工作有一定的相关度,但平时不会走这个方向,实际上也较少接触.此外,客户手 ...