news 2026/3/11 8:48:54

打卡信奥刷题(2629)用C++实现信奥题 P2634 [国家集训队] 聪聪可可

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
打卡信奥刷题(2629)用C++实现信奥题 P2634 [国家集训队] 聪聪可可

P2634 [国家集训队] 聪聪可可

题目描述

聪聪和可可是兄弟俩,他们俩经常为了一些琐事打起来,例如家中只剩下最后一根冰棍而两人都想吃、两个人都想玩儿电脑(可是他们家只有一台电脑)……遇到这种问题,一般情况下石头剪刀布就好了,可是他们已经玩儿腻了这种低智商的游戏。

他们的爸爸快被他们的争吵烦死了,所以他发明了一个新游戏:由爸爸在纸上画nnn个“点”,并用n−1n-1n1条“边”把这nnn个“点”恰好连通(其实这就是一棵树)。并且每条“边”上都有一个数。接下来由聪聪和可可分别随机选一个点(当然他们选点时是看不到这棵树的),如果两个点之间所有边上数的和加起来恰好是333的倍数,则判聪聪赢,否则可可赢。

聪聪非常爱思考问题,在每次游戏后都会仔细研究这棵树,希望知道对于这张图自己的获胜概率是多少。现请你帮忙求出这个值以验证聪聪的答案是否正确。

输入格式

输入的第111行包含111个正整数nnn。后面n−1n-1n1行,每行333个整数x,y,wx,y,wx,y,w,表示xxx号点和yyy号点之间有一条边,上面的数是www

输出格式

以即约分数形式输出这个概率(即a/b的形式,其中aaabbb必须互质。如果概率为111,输出1/1)。

输入输出样例 #1

输入 #1

5 1 2 1 1 3 2 1 4 1 2 5 3

输出 #1

13/25

说明/提示

【样例说明】

131313组点对分别是(1,1)(1,1)(1,1)(2,2)(2,2)(2,2)(2,3)(2,3)(2,3)(2,5)(2,5)(2,5)(3,2)(3,2)(3,2)(3,3)(3,3)(3,3)(3,4)(3,4)(3,4)(3,5)(3,5)(3,5)(4,3)(4,3)(4,3)(4,4)(4,4)(4,4)(5,2)(5,2)(5,2)(5,3)(5,3)(5,3)(5,5)(5,5)(5,5)

【数据规模】

对于100%100\%100%的数据,n≤2×104n\leq 2 \times 10^4n2×104

C++实现

#include<bits/stdc++.h>usingnamespacestd;inlineintread(){ints=0,f=1;charch=getchar();while(!isdigit(ch))f=(ch=='-'?-1:1),ch=getchar();while(isdigit(ch))s=(s<<1)+(s<<3)+(ch&15),ch=getchar();returns*f;}intn,f[20005][3],u,v,w,ans,m;vector<int>nxt[20005],val[20005];inlinevoiddfs(intnow,intfa){f[now][0]=1;vector<int>::iterator iv=val[now].begin();for(vector<int>::iterator it=nxt[now].begin();it!=nxt[now].end();++it){if((*it)==fa){++iv;continue;}dfs((*it),now);for(inti=0;i<3;++i)ans+=f[(*it)][i]*f[now][(3-(((i+(*iv))%3+3)%3))%3]*2;for(inti=0;i<3;++i)f[now][((i+(*iv))%3+3)%3]+=f[(*it)][i];++iv;}}inlineintgcd(inta,intb){returnb==0?a:gcd(b,a%b);}intmain(){n=read();for(inti=1;i<n;++i){u=read();v=read();w=read();nxt[u].push_back(v);val[u].push_back(w);nxt[v].push_back(u);val[v].push_back(w);}ans=n;dfs(1,-1);m=n*n;printf("%d/%d",ans/gcd(ans,m),m/gcd(ans,m));return0;}

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/4 1:57:54

打卡信奥刷题(2631)用C++实现信奥题 P2650 弹幕考察

P2650 弹幕考察 题目背景 zeromaker 是个手残&#xff0c;但是他喜欢玩东方 project&#xff0c;ex 什么的最喜欢了 题目描述 zeromaker 对弹幕的视野控制有着深刻的研究。 每个弹幕在一段特定的时间内会出现在 zeromaker 的视野内&#xff0c;除此之外的时间都在 zeromaker 看…

作者头像 李华
网站建设 2026/3/3 15:21:06

财经数据分析讲解?搭配图表更直观

财经数据分析讲解&#xff1f;搭配图表更直观 在金融信息爆炸的今天&#xff0c;投资者每天面对海量数据&#xff1a;K线图、资金流向、行业涨跌幅……但真正能“看懂”这些数字的人却越来越少。传统财经简报依赖文字或静态图表&#xff0c;理解门槛高、传播效率低&#xff1b;…

作者头像 李华
网站建设 2026/3/8 14:22:31

AI 论文工具 “九宫格”:重构毕业论文的 9 种高效打开方式

当毕业论文的 “选题、文献、数据、排版” 四大关卡同时压来&#xff0c;单靠一款工具往往难以覆盖全流程。而从 “国民级助手” paperxie&#xff0c;到专攻某一环节的小众利器&#xff0c;这 9 款 AI 毕业论文工具组成的 “能力矩阵”&#xff0c;正在把学术创作的 “攻坚战”…

作者头像 李华
网站建设 2026/3/11 18:28:39

Sonic模型文件大小仅几GB,适合边缘设备部署

Sonic模型文件大小仅几GB&#xff0c;适合边缘设备部署 在虚拟主播、短视频创作和在线教育等场景中&#xff0c;实时生成高质量说话视频的需求正以前所未有的速度增长。用户不再满足于静态图文或预录内容&#xff0c;而是期待更具互动感与拟人化的数字形象——这正是数字人技术…

作者头像 李华
网站建设 2026/3/10 4:03:59

Sonic与AR/VR结合?构建三维交互数字人

Sonic与AR/VR融合&#xff1a;构建三维交互数字人 在虚拟主播24小时不间断直播、AI教师走进在线课堂、元宇宙社交日益普及的今天&#xff0c;一个核心问题浮出水面&#xff1a;如何以极低成本生成自然生动的数字人面部动画&#xff1f; 传统方案依赖高精度3D建模和昂贵的动作捕…

作者头像 李华
网站建设 2026/3/10 6:59:25

体育赛事集锦解说?激情语调匹配动作

体育赛事集锦解说&#xff1f;激情语调匹配动作 在短视频流量为王的时代&#xff0c;一场足球比赛结束不到十分钟&#xff0c;你就能在抖音刷到“主持人激情怒吼&#xff1a;绝杀&#xff01;冠军诞生&#xff01;”的集锦视频——而这位主播可能根本没看过这场比赛。这背后&am…

作者头像 李华