题目来源:CodeForce #27 B

有n个人比赛,两两之间都有一场比赛,一共 n * (n - 1) / 2 场比赛。每场比赛的记录方式是 a b,表示在a和b的比赛中,a胜出,b失败。

经过研究发现,输赢有传递性,例如:a赢了b,b赢了c,那么a一定会赢c。

现在,比赛记录发现丢了一场,请输出这一场的比赛记录。输出可能的结果中的一个就OK。

直接暴力可做。首先,利用一个二维数组,记录两人是否比赛。得到了丢失了一场比赛的两位选手a, b之后,按照输赢的传递性直接找有没有出现一个人c。使得 a 赢了 c, c 赢了 b 。有就输出a b,没有就b a。

附AC代码:

   1: #include <stdio.h>

   2: #include <iostream>

   3: #include <math.h>

   4: #include <stdlib.h>

   5: #include <string.h>

   6: #include <algorithm>

   7: #include <string>

   8: #include <vector>

   9:  

  10: using namespace std;

  11:  

  12: struct R

  13: {

  14:     int win, los;

  15: };

  16:  

  17: int main()

  18: {

  19:     int n, win, los;

  20:     int rec[59][59];

  21:     while(~scanf("%d", &n))

  22:     {

  23:         memset(rec, 0, sizeof(rec));

  24:         for (int i = 1; i < (n*(n-1)/2); i++)

  25:         {

  26:             scanf("%d%d", &win, &los);

  27:             rec[win][los] = 1;

  28:             rec[los][win] = -1;

  29:         }

  30:         R res;

  31:         bool flag = 1;

  32:         for (int i = 1; i <= n && flag; i++)

  33:         {

  34:             for (int j = 1; j <= n && flag; j++)

  35:             {

  36:                 if (i == j) continue;

  37:                 if (rec[i][j] == 0)

  38:                 {

  39:                     res.win = i;

  40:                     res.los = j;

  41:                     flag = 0;

  42:                 }

  43:             }

  44:         }

  45:         flag = 1;

  46:         for (int i = 1; i <= n && flag; i++)

  47:         {

  48:             if (rec[res.win][i] == 1 && rec[i][res.los] == 1)

  49:             {

  50:                 printf("%d %d\n", res.win, res.los);

  51:                 flag = 0;

  52:             }

  53:         }

  54:         if (flag)

  55:             printf("%d %d\n", res.los, res.win);

  56:     }

  57:     return 0;

  58: }

大家一起做训练 第一场 B Tournament的更多相关文章

  1. 大家一起做训练 第一场 E Number With The Given Amount Of Divisors

    题目来源:CodeForce #27 E 题目意思和题目标题一样,给一个n,求约数的个数恰好为n个的最小的数.保证答案在1018内. Orz,这题训练的时候没写出来. 这道题目分析一下,1018的不大 ...

  2. 大家一起做训练 第一场 G CD

    题目来源:UVA 624 题目的意思就是:我现在需要从 t 张CD中拿出一部分来,尽可能的凑出接近 N 这么久的音乐,但是不能超过 N. CD不超过20张,每张长度不超过 N ,不能重复选. 一个很简 ...

  3. 大家一起做训练 第一场 A Next Test

    题目来源:CodeForce #27 A 题目的意思简而言之就是要你输出一个没有出现过的最小的正整数. 题意如此简单明了,做法也很明了. 直接读入所有的数,然后排个序,设置个变量从1开始,出现过+1, ...

  4. 大家一起做训练 第二场 E Cottage Village

    题目来源:CodeForce #15 A 现在有 n 间正方形的房子,其中心点分布在 X轴 上,现在我需要新建一间边长为 t 的房子,要求新房子至少和一间房子相邻,但是不能和其他房子重合.请输出我有多 ...

  5. 牛客网多校训练第一场 I - Substring(后缀数组 + 重复处理)

    链接: https://www.nowcoder.com/acm/contest/139/I 题意: 给出一个n(1≤n≤5e4)个字符的字符串s(si ∈ {a,b,c}),求最多可以从n*(n+1 ...

  6. 2015多校联合训练第一场Tricks Device(hdu5294)

    题意:给一个无向图,给起点s,终点t,求最少拆掉几条边使得s到不了t,最多拆几条边使得s能到t 思路: 先跑一边最短路,记录最短路中最短的边数.总边数-最短边数就是第二个答案 第一个答案就是在最短路里 ...

  7. HDU多校训练第一场 1012 Sequence

    题目链接:acm.hdu.edu.cn/showproblem.php?pid=6589 题意:给出一个长度为n的数组,有m次操作,操作有3种1,2,3,问操作m次后的数组,输出i*a[i]的异或和 ...

  8. [2021-TKK 暑期训练第一场] 1585:下馆子-3

    题目做了超链接 参考官方题解,作部分优化 下馆子 -3 题意: 给定n组数据,由name,time构成 当只有一个最大值时,输出该同学 当不止有一个最大值时,输出最先大于等于max次的同学 题解: 考 ...

  9. Gym-101653:acific Northwest Regional Contest (2019训练第一场)

    本套题没有什么数据结构题,图论题,唯一有价值的就是Q题博弈,在最后面,读者可以直接拉到最下面. (还剩下两个,估计每什么价值的题,懒得补了 M .Polyhedra pro:欧拉公式,V-E+F=2: ...

随机推荐

  1. 【Golang 接口自动化05】使用yml管理自动化用例

    我们在前面几篇文章中学习怎么发送数据请求,怎么处理解析接口返回的结果,接下来我们一起来学习怎么进行测试用例管理,今天我们介绍的是使用yml文件进行用例管理,所以首先我们一起来了解一下YAML和它的简单 ...

  2. 一个Java例子,解释清楚注解的作用

    原文出处:码农登陆 写在前面 今天聊的是注解,但其实单纯说注解,注解本身没有任何的作用.简单说和注释没啥区别,而它有作用的原因是:注解解释类,也就是相关对代码进行解释的特定类.一般这些类使用反射是可以 ...

  3. ASP.NET调用dos命令获取交换机流量

    protected void btn_Cisco_Click(object sender, EventArgs e) { try { string ip = txt_ip.Value; string ...

  4. WPF 阴影效果

    WPF 阴影效果 制作WPF的阴影效果可以有很多种,貌似后来性能不好,然后被微软给X掉了.现在只有几个是可以用的,先暂时学习下现在有的,等以后看看用什么来代替原来的那些效果. 1.首先最常见的一个阴影 ...

  5. Many Easy Problem

    转自hwk0518,不胜感谢,侵删.

  6. Memory and Casinos CodeForces - 712E (概率,线段树)

    题目链接 题目大意:$n$个点, 每个点$i$有成功率$p_i$, 若成功走到$i+1$, 否则走到走到$i-1$, 多组询问, 求从$l$出发, 在$l$处不失败, 最后在$r$处胜利的概率 设$L ...

  7. devilbox(二):连接数据库

    Devilbox的安装在上一篇https://www.cnblogs.com/ermao0423/p/9505653.html中已经记录了,这篇主要记录各种数据库的连接.用户建立.设置密码等 查看do ...

  8. 『PyTorch』第四弹_通过LeNet初识pytorch神经网络_下

    『PyTorch』第四弹_通过LeNet初识pytorch神经网络_上 # Author : Hellcat # Time : 2018/2/11 import torch as t import t ...

  9. AIOps探索:基于VAE模型的周期性KPI异常检测方法——VAE异常检测

    AIOps探索:基于VAE模型的周期性KPI异常检测方法 from:jinjinlin.com   作者:林锦进 前言 在智能运维领域中,由于缺少异常样本,有监督方法的使用场景受限.因此,如何利用无监 ...

  10. win10解除密码