食物链3_食物链条数计算公式

食物链3_食物链条数计算公式动物王国中有三类动物 A,B,C,这三类动物的食物链构成了有趣的环形。A 吃 B,B 吃 C,C 吃 A。现有 N 个动物,以 1∼N 编号。每个动物都是 A,B,C 中的一种,但是我们并不知道它到底是哪一种。有人用两种说法对这 N 个动物所构成的食物链关系进行描述:第一种说法是 1 X Y,表示 X 和 Y 是同类。第二种说法是 2 X Y,表示 X 吃 Y。此人对 N 个动物,用上述两种说法,一句接一句地说出 K 句话,这 K 句话有的是真的,有的是假的。当一句话满足下列三条之一时,这句

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

动物王国中有三类动物 A,B,C,这三类动物的食物链构成了有趣的环形。

A 吃 B,B 吃 C,C 吃 A。

现有 N 个动物,以 1∼N 编号。

每个动物都是 A,B,C 中的一种,但是我们并不知道它到底是哪一种。

有人用两种说法对这 N 个动物所构成的食物链关系进行描述:

第一种说法是 1 X Y,表示 X 和 Y 是同类。

第二种说法是 2 X Y,表示 X 吃 Y。

此人对 N 个动物,用上述两种说法,一句接一句地说出 K 句话,这 K 句话有的是真的,有的是假的。

当一句话满足下列三条之一时,这句话就是假话,否则就是真话。

当前的话与前面的某些真的话冲突,就是假话;
当前的话中 X 或 Y 比 N 大,就是假话;
当前的话表示 X 吃 X,就是假话。
你的任务是根据给定的 N 和 K 句话,输出假话的总数。

输入格式
第一行是两个整数 N 和 K,以一个空格分隔。

以下 K 行每行是三个正整数 D,X,Y,两数之间用一个空格隔开,其中 D 表示说法的种类。

若 D=1,则表示 X 和 Y 是同类。

若 D=2,则表示 X 吃 Y。

输出格式
只有一个整数,表示假话的数目。

数据范围
1≤N≤50000,
0≤K≤100000

输入样例:
100 7
1 101 1 
2 1 2
2 2 3 
2 3 3 
1 1 3 
2 3 1 
1 5 5
输出样例:
3
#include<bits/stdc++.h>
using namespace std;
const int N = 5e4 + 10;
int f[N],d[N];
int Find(int x){ 
   
    if(x != f[x]){ 
   
        
        int t = Find(f[x]);
        d[x] = (d[x] + d[f[x]]);
    
        f[x] = t;
    }
    return f[x];
}
int main(){ 
   
    int n,k;
    cin>>n>>k;
    for(int i = 0;i <= n;i ++)f[i] = i;
    memset(d,0,sizeof d);
    int res = 0;
    int t,x,y;
    for(int i = 0;i < k;i ++){ 
   
        cin>>t>>x>>y;
        if(x > n || y > n)res ++;
        else{ 
   
            int a = Find(x),b = Find(y);
            if(t == 1){ 
   
                if(a != b){ 
   
                    f[a] = b;
                    d[a] = (d[y] - d[x]);
                }else{ 
   
                    if(abs(d[y] - d[x]) % 3)res ++;
                }
            }
            else { 
   
                if(a != b){ 
   
                    f[a] = b;
                    d[a] = (1 + d[y] - d[x]);
                }else { 
   
                    if(abs(d[x] - d[y] - 1) % 3)res ++;
                }
            }
        }
    }
    cout<<res<<endl;
    
    return 0;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/168607.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月9日 下午1:36
下一篇 2022年8月9日 下午1:36


相关推荐

  • AVAudioEngine录音崩溃, reason: ‘format.sampleRate == hwFormat.sampleRate

    AVAudioEngine录音崩溃, reason: ‘format.sampleRate == hwFormat.sampleRateAVAudioEngine录音频时偶发崩溃报错信息大致如下:2021-12-1520:12:38.429028+0800*[1659:708511]NSURLConnectionfinishedwitherror-code-1002″AudioRecorder创建Audio缓存文件夹成功/var/mobile/Containers/Data/Application//Library/Caches/Audio”2021-12-1520:13:30.762736+0800***

    2022年10月17日
    5
  • Spring 的循环依赖:真的必须非要三级缓存吗?

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 作者:青石路 www.cnblogs.com/youzhibing/p/14337244.html 写作背景 做 J…

    2021年6月28日
    86
  • linux查看python环境变量_Linux中的Python环境变量

    linux查看python环境变量_Linux中的Python环境变量Python 对环境变量的访问不能准确反映操作系统对流程环境的看法 os getenv 和 os environ 在特定情况下不能正常运行 有没有办法正确地获得运行过程的环境 为了演示我的意思 采用两个大致相同的程序 C 中的第一个 python 中的另一个 include include includeintma intargc char argv char env for

    2026年3月17日
    2
  • 推荐一个命名变量的神奇网站 CODELF

    推荐一个命名变量的神奇网站 CODELF推荐一个命名变量的神奇网站CODELF在我们写程序的时候,总是需要去给各种变量命名。于是各种命名大法都上来了,有拼音的,有首字母缩写的,各种各样。而我们推荐的命名肯定是英文的驼峰命名。今天给大家推荐一个网站:https://unbug.github.io/codelf/这个网站可以根据你输入的关键词,给出很多变量命名的推荐。并且支持中文。另外,针对各种主流编辑器,还有插件。非常推荐大家收藏一下这个

    2022年5月4日
    229
  • linux命令_linux基本命令的使用

    linux命令_linux基本命令的使用创建petalinux工程:petalinux-create-tproject–templatezynq-nzynq_linux配置petalinux工程:petalinux-config–get-hw-description/mnt/hgfs/VMShare/ZYNQ7035_Linux/ZYNQ7035_Linux.sdk/重新配置petalinux工程:petalinux-config配置Linux内核:petalinux-config-ckernel配置Lin

    2025年10月29日
    4
  • 美女登场「建议收藏」

    美女登场「建议收藏」不怕大家笑话,我大学毕业时,还是个处长,所谓处长就是没有经过女人滋润的那种,我想大家都知道我是什么意思的。其实,上大学的时候我还是有些女人缘的,毕竟在班上我的学习成绩还是走在了同学们的前列,这是一笔不小的资本。你不知道,只要到了考试前一个月左右,我是很跑火的,我们班上那些天天浸泡在女孩子堆的家伙就要开始巴结我,请我吃饭,因为他们要拿到毕业证,还是需要过我这关的,考试的时候他们好抄袭我的,我要是给他

    2025年12月3日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号