#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 (题意理解容易出错)的更多相关文章

  1. USACO2.1 Hamming Codes【枚举+二进制处理+输出格式+题意理解】

    这道题加了2个看起来奇奇怪怪的$tag$ 1.输出格式:不得不说这个格式输出很恶心,很像$UVA$的风格,细节稍微处理不好就会出错. 因为这个还$WA$了一次: ,m=n; ) { ;i<=t+ ...

  2. PAT甲级——1095 Cars on Campus (排序、映射、字符串操作、题意理解)

    本文同步发布在CSDN:https://blog.csdn.net/weixin_44385565/article/details/93135047 1095 Cars on Campus (30 分 ...

  3. poj 3304 Segments (题意理解出错,错误的只枚举了过线段的直线)

    //枚举过每一条线段的直线, //再判断其他线段的点在直线上或被直线穿过 //即求直线与线段相交(叉积) #include<stdio.h> #include<math.h> ...

  4. HDU 4740 模拟题意

    九野的博客,转载请注明出处:http://blog.csdn.net/acmmmm/article/details/11711743 题意:驴和老虎在方格中跑,跑的方式:径直跑,若遇到边界或之前走过的 ...

  5. 洛谷 P1426 小鱼会有危险吗【模拟/题意理解】

    题目描述 有一次,小鱼要从A处沿直线往右边游,小鱼第一秒可以游7米,从第二秒开始每秒游的距离只有前一秒的98%.有个极其邪恶的猎人在距离A处右边s米的地方,安装了一个隐蔽的探测器,探测器左右x米之内是 ...

  6. HDU 4326Game(比较难理解的概率dp)

    Game Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Subm ...

  7. poj2376 Cleaning Shifts(区间贪心,理解题意)

    https://vjudge.net/problem/POJ-2376 题意理解错了!!真是要仔细看题啊!! 看了poj的discuss才发现,如果前一头牛截止到3,那么下一头牛可以从4开始!!! # ...

  8. 致初学者(一): HDU 2000~ 2013题解

    对于开始学习C语言程序设计或C++程序设计面向过程部分的同学来说,利用在线OJ网站进行实践训练,对提高自己的编程能力很有好处.国内外OJ网站很多,每个都去看看,去刷个题,是不现实的,也没必要.即使一个 ...

  9. hdu 4619 Warm up 2(并查集)

    借用题解上的话,就是乱搞题.. 题意理解错了,其实是坐标系画错了,人家个坐标系,我给当矩阵画,真好反了.对于题目描述和数据不符的问题,果断相信数据了(这是有前车之鉴的hdu 4612 Warm up, ...

随机推荐

  1. MVC4.0 WebApi如何自定义返回数据类型

    1.客户端可以通过HTTP Accept消息头来通知服务器客户端想要什么样的MIME类型数据,例如:application/json则代表告诉服务器想要的是Json数据 2.服务器端撇开客户端的请求类 ...

  2. PB中multieditline空间的“~r~n"转"~n"

    private: constant String MULEDIT_NEWLINE = "~r~n" //multilineEdit控件的换行符号 constant String M ...

  3. KinectStudio使用教程

    在Kinect SDK 2.0安装结束之后,会有一个KinectStudio的调试工具,他可以将动作记录下,以后即便脱离了Kinect传感器也可以愉快的调试了.现在我们来看看如何使用 首先打开Kine ...

  4. Sqrt(x)

    Implement int sqrt(int x). Compute and return the square root of x. 参考:http://standalone.iteye.com/b ...

  5. OpenFramework中视频或者图片进行中心旋转、平移、放大、缩小、矫正(本例以视频为准,只给出主要代码)

    /********** update mesh部分***********/ for(int i=0;i<4;i++) {  mesh[i].clear(); //重要,不加的话,移动视频的四个角 ...

  6. ACK

    ACK (Acknowledgement),即确认字符,在数据通信中,接收站发给发送站的一种传输类控制字符.表示发来的数据已确认接收无误. 目录 1基本介绍 2详细释义     1基本介绍编辑 英文缩 ...

  7. ubuntu重置root密码

    from: http://mmicky.blog.163.com/blog/static/150290154201398113034698/ 使用ubuntu的时候忘记了root密码该如何重置?我使用 ...

  8. shell编程之sleep的运用

    #!/bin/bashecho -n "Count:"tput sccount=0;while true;doif [ $count -lt 40 ]then let count+ ...

  9. 【NOI模拟赛(湖南)】DeepDarkFantasy

    DeepDarkFantasy 从东京出发,不久便到一处驿站,写道:日暮里.  ——鲁迅<藤野先生> 定义一个置换的平方为对1~n的序列做两次该置换得到的序列.已知一个置换的平方,并且这个 ...

  10. 查看Centos系统信息命令

    linux命令行具有强大的功能,我们安装vps后,首先应该知道系统信息,查看这些信息,你会发现Linux命令很简单,你可以按照下面的命令练习. linux系统信息 # uname -a # 查看内核/ ...