皇城PK(小白)

本文介绍了皇城PK问题,涉及n名选手进行m次比赛,每次比赛只有一个胜者。根据比赛结果,判断最多有多少个选手可能成为实力最强的冠军。题目要求实力相强者都不能获得冠军。通过分析,思路是排除每个胜利者之后的选手,从而找出可能的冠军数量。给出了输入输出描述及示例,并提供了问题的来源——牛客网。
摘要由CSDN通过智能技术生成

题目描述

有nnn名选手会进行mmm次比赛,每次比赛不会出现平局的情况,只会有一个胜者。在每次比赛完成之后,我们视胜者选手的实力比败者选手的实力强,如果出现选手AAA打败选手BBB,选手BBB打败选手CCC,选手CCC打败选手AAA,则视为他们的实力全部相同。

若该赛季最终冠军是属于实力最强者,请问依照现在已有的比赛结果,最多有多少个选手可能获得冠军(如果已知两个人的实力一样强,那么他们两个人都不能获得冠军)。

输入描述:

第一行输入两个正整数nnn,mmm,其中:n≤105n\leq 10^{5}n≤105,m≤105m\leq 10^{5}m≤105。

接下来mmm行,每行两个正整数aaa与bbb,代表选手aaa战胜了选手bbb,满足:a≤na\leq na≤n,b≤nb\leq nb≤n。

输出描述:

输出最多有多少名选手最终可能获得冠军。

示例1

输入

3 2
1 2
1 3

输出

1

思路:

思路就是前一个数大于后一个数,所以后一个数是不可能获得冠军的,所以吧后边的数记录下来再用所有的数减去他就是最多有多少个获得冠军。

#include<iostream>
#include<cstdio>
using namespace std;
const int n=100010;
int a[n]={0};
int main()
{
    int b,number,number1=0;
  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值