hdu 1567 2006 (题意理解容易出错)
#include<stdio.h>
#include<vector>
#include<algorithm>
using namespace std;
struct Node
{
int x,y;
} p;
bool cmp(Node a,Node b)
{
if(a.x<b.x)return true;
if(a.x==b.x&&a.y<b.y)return true;
return false;
}
vector<Node>ve;
int main()
{
int n,m;
int x,y,flag;
int i,j;
while(scanf("%d",&n)!=EOF)
{
flag=;
ve.clear();
m=n;
n=n*(n-)/;
for(i=; i<n; i++)
{
scanf("%d-%d",&x,&y);
if(flag)
{
if(x==y)
{
flag=;
}
else if(x>y)
{
p.x=y;
p.y=x;
ve.push_back(p);
}
else
{
p.x=x;
p.y=y;
ve.push_back(p);
}
} }
if(flag)
{
int k=;
sort(ve.begin(),ve.end(),cmp);
for(i=; i<m; i++)
{
if(flag)
for(j=i+; j<=m; j++)
{
if(i!=ve[k].x||j!=ve[k].y)
{
flag=;
break;
}
k++;
}
else break;
}
}
if(flag)printf("Yes\n");
else printf("No\n");
}
return ;
}
#include<iostream>
#include<string.h>
#include<cstdio> using namespace std;
int flag[][];
int main()
{ int i,j;
int n,a,b; char str[]; while(scanf("%d",&n)!=EOF)
{ memset(flag,,sizeof(flag));
int tag=; for(i=;i<n;i++)
{
for(j=;j<=n/;j++)
{
cin>>str;
sscanf(str,"%d-%d",&a,&b);
if(flag[a][b]==||flag[b][a]==||a==b)
{
tag=;
}
flag[a][]++;
flag[b][]++;
flag[a][b]=;
flag[b][a]=;
}
}
if(tag)
printf("No\n");
else
{
int tag1=;
for(i=;i<=n;i++)
{
if(flag[i][]!=n-)
{
tag1=;
printf("No\n");
break;
}
}
if(!tag1)
printf("Yes\n");
}
}
return ;
}
都WA了,疑惑不解啊!!!
题意问题!!!!!!!??
正确理解方式:
每一行的输入是每只队伍比赛且仅比赛一次;
所有输入的组合是赛事安排的所有可选解
正解:
#include<stdio.h>
#include<string.h>
int flag[][];
int hang[];
int main()
{ int i,j;
int n,a,b; char str[]; while(scanf("%d",&n)!=EOF)
{ memset(flag,,sizeof(flag));
int tag=; for(i=;i<n;i++)
{
memset(hang,,sizeof(hang));
for(j=;j<=n/;j++)
{
//cin>>str;
scanf("%d-%d",&a,&b);
if(flag[a][b]==||flag[b][a]==||a==b)
{
tag=;
}
hang[a]++;
hang[b]++;
flag[a][]++;
flag[b][]++;
flag[a][b]=;
flag[b][a]=;
}
for(j=;j<=n;j++)
{
if(hang[j]!=)
{
tag=;
break;
}
}
}
if(tag)
printf("No\n");
else
{
int tag1=;
for(i=;i<=n;i++)
{
if(flag[i][]!=n-)
{
tag1=;
printf("No\n");
break;
}
}
if(!tag1)
printf("Yes\n");
}
}
return ;
}
#include<stdio.h>
#include<string.h>
#include<vector>
#include<algorithm>
using namespace std;
struct Node
{
int x,y;
} p;
bool cmp(Node a,Node b)
{
if(a.x<b.x)return true;
if(a.x==b.x&&a.y<b.y)return true;
return false;
}
vector<Node>ve;
int hang[2010];
int main()
{
int n;
int x,y,flag;
int i,j;
while(scanf("%d",&n)!=EOF)
{
flag=1;
ve.clear();
for(i=1; i<n; i++)
{
memset(hang,0,sizeof(hang));
for(j=1; j<=n/2; j++)
{
scanf("%d-%d",&x,&y);
hang[x]++;
hang[y]++;
if(flag)
{
if(x==y)
{
flag=0;
}
else if(x>y)
{
p.x=y;
p.y=x;
ve.push_back(p);
}
else
{
p.x=x;
p.y=y;
ve.push_back(p);
}
}
}
for(j=1;j<=n/2;j++)
{
if(hang[j]!=1)
{
flag=0;
break;
}
}
}
if(flag)
{
int k=0;
sort(ve.begin(),ve.end(),cmp);
for(i=1; i<n; i++)
{
if(flag)
for(j=i+1; j<=n; j++)
{
if(i!=ve[k].x||j!=ve[k].y)
{
flag=0;
break;
}
k++;
}
else break;
}
}
if(flag)printf("Yes\n");
else printf("No\n");
}
return 0;
}
hdu 1567 2006 (题意理解容易出错)的更多相关文章
- USACO2.1 Hamming Codes【枚举+二进制处理+输出格式+题意理解】
这道题加了2个看起来奇奇怪怪的$tag$ 1.输出格式:不得不说这个格式输出很恶心,很像$UVA$的风格,细节稍微处理不好就会出错. 因为这个还$WA$了一次: ,m=n; ) { ;i<=t+ ...
- PAT甲级——1095 Cars on Campus (排序、映射、字符串操作、题意理解)
本文同步发布在CSDN:https://blog.csdn.net/weixin_44385565/article/details/93135047 1095 Cars on Campus (30 分 ...
- poj 3304 Segments (题意理解出错,错误的只枚举了过线段的直线)
//枚举过每一条线段的直线, //再判断其他线段的点在直线上或被直线穿过 //即求直线与线段相交(叉积) #include<stdio.h> #include<math.h> ...
- HDU 4740 模拟题意
九野的博客,转载请注明出处:http://blog.csdn.net/acmmmm/article/details/11711743 题意:驴和老虎在方格中跑,跑的方式:径直跑,若遇到边界或之前走过的 ...
- 洛谷 P1426 小鱼会有危险吗【模拟/题意理解】
题目描述 有一次,小鱼要从A处沿直线往右边游,小鱼第一秒可以游7米,从第二秒开始每秒游的距离只有前一秒的98%.有个极其邪恶的猎人在距离A处右边s米的地方,安装了一个隐蔽的探测器,探测器左右x米之内是 ...
- HDU 4326Game(比较难理解的概率dp)
Game Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Subm ...
- poj2376 Cleaning Shifts(区间贪心,理解题意)
https://vjudge.net/problem/POJ-2376 题意理解错了!!真是要仔细看题啊!! 看了poj的discuss才发现,如果前一头牛截止到3,那么下一头牛可以从4开始!!! # ...
- 致初学者(一): HDU 2000~ 2013题解
对于开始学习C语言程序设计或C++程序设计面向过程部分的同学来说,利用在线OJ网站进行实践训练,对提高自己的编程能力很有好处.国内外OJ网站很多,每个都去看看,去刷个题,是不现实的,也没必要.即使一个 ...
- hdu 4619 Warm up 2(并查集)
借用题解上的话,就是乱搞题.. 题意理解错了,其实是坐标系画错了,人家个坐标系,我给当矩阵画,真好反了.对于题目描述和数据不符的问题,果断相信数据了(这是有前车之鉴的hdu 4612 Warm up, ...
随机推荐
- mac下163企业邮箱客户端的配置
一 添加账户 添加账户->添加其他邮件账户->输入电子邮件地址和密码.(全名随意起). 二 收件服务器和发件服务器的设置 收件服务器:pop.qiye.163. ...
- MVC模式中路由如何生成URL
路由有必要的参数吗 在MVC设计模式中,一个比较重要的步骤是浏览器发送的请求如何生成相应的URL,交给服务器去实例化相应的控制器类然后调用相应的控制器类的对应方法,返回视图给用户.这个流程细说起来比较 ...
- 004--VS C++ 绘制封闭图形
//全局变量HPEN hPen;HBRUSH hBru[4];int sBru[4] = { HS_VERTICAL, HS_HORIZONTAL, HS_CROSS, HS_DIAGCROSS }; ...
- python pandas/numpy
import pandas as pdpd.merge(dataframe1,dataframe2,on='common_field',how='outer') replace NaN datafra ...
- Log4Net学习【三】
Log4Net配置详解 配置方式一 在相应的应用程序的配置文件中配置,(WinForm对应的是*.exe.config,WebForm对应的是*.config),本实例是Web应用程序,以Web.co ...
- 关于arguments对象以及函数的柯里化;
1.arguments对象 Arguments是个类似数组但不是数组的对象,说他类似数组是因为其具备数组相同的访问性质及方式,能够由arguments[n]来访问对应的单个参数的值,并拥有数组长度属性 ...
- 使用Java 8 API,根据传递的分隔符,连接list中所有的元素
public class MethodReferenceDemo1 { @FunctionalInterface interface StringListFormatter { String form ...
- C# 天气预报
问题描述: 使用C#做一个简易的天气预报系统 问题解决: 主要使用类如下: WeatherLoc:包含常用的调用中国气象局天气情况接口 using System; using System.Colle ...
- poj 1463 Strategic game
题目链接:http://poj.org/problem?id=1463 题意:给出一个无向图,每个节点只有一个父亲节点,可以有多个孩子节点,在一个节点上如果有一位战士守着,那么他可以守住和此节点相连的 ...
- [原] blade中C++ singleton的实现
最近看了龚大大KalyGE中的singleton, 觉得非常不错(C++中线程安全并且高效的singleton). 可惜blade的代码都是C++03的, 没有使用C++11的任何特性. 笔者对于si ...