【小羊肖恩】小羊杯 Round 2 C+K

题目链接:https://ac.nowcoder.com/acm/contest/100672#question

C.是毛毛虫吗?

思路:

其实很简单,假设我们要满足题目所给条件,那么这个毛毛虫最坏情况下肯定是一条如下图所示的无向图

右端省略号为对称图形 ,其中红线为毛毛虫的主体

那我们可以知道,只要对于其中任意一个节点增加一个,那么就无法构成毛毛虫

再总结一下,即只要一个节点有三个子节点,且这三个子节点都含有一个子节点(不为父节点)

那么就无法构成毛毛虫

代码:

#include <iostream>
#include <algorithm>
#include<cstring>
#include<cctype>
#include<string>
#include <set>
#include <vector>
#include <cmath>
#define ll long long
using namespace std;void solve()
{int n;cin >> n;vector<vector<int> >a(n + 1);for (int i = 1; i < n; i++) {int x, y;cin >> x >> y;a[x].push_back(y);a[y].push_back(x);}for (int i = 1; i <= n; i++){if (a[i].size() >= 3){int sum = 0;for (int j = 0; j < a[i].size(); j++){int t = a[i][j];if (a[t].size() > 1)sum++;}if (sum >= 3) {cout << "NO" << endl;return;}}}cout << "YES" << endl;
}int main()
{cin.tie(0)->sync_with_stdio(false);int t = 1;cin >> t;while (t--){solve();}return 0;
}

K.友善的数

思路:

首先,只有x或y有一个为1,那么必定无法找出

那么接下来我们考虑什么情况这个数k与x,y不互质

可以显然看出,我们最小的情况肯定是 Px*Py ,其中P为构成x/y的最小质因数

那么就分两种情况

①.gcd(x,y) == 1

此时x和y互质,那么此时只能选x和y的最小质因数

②.gcd(x,y) != 1

此时x和y有着公约数,那么我们可以考虑旋转公约数的最小质因子,但是不能保证其一定比x和y的最小质因数之积小,所以还需要取min

对于如何选取x和y的质因数,我们可以想到欧拉筛,在欧拉筛中我们保证每次筛选都是最小质因数的i倍,所以我们便可以定义一个数组用于储存每个数的最小质因数,同时预处理一下

代码:

#include <iostream>
#include <algorithm>
#include<cstring>
#include<cctype>
#include<string>
#include <set>
#include <vector>
#include <cmath>
#define ll long long
using namespace std;ll gcd(ll a,ll b)
{return !b ? a : gcd(b, a % b);
}
const int N = 2e5+1;
bool isp[N + 1];
vector<int> p;
int minp[N + 1];void els()
{memset(isp, true, sizeof isp);isp[0] = isp[1] = false;for (int i = 2; i <= N; i++){if (isp[i]) p.push_back(i), minp[i] = i;for (int j = 0; j < p.size() && p[j] * i <=N; j++){minp[p[j] * i] = p[j];isp[p[j] * i] = false;if (i % p[j] == 0) break;}}
}void solve()
{ll x, y;cin >> x >> y;if (x == 1 || y == 1){cout << -1 << endl;return;}if (gcd(x,y) == 1){cout << (ll)(minp[x]) * (ll)(minp[y]) << endl;}else{cout << min((ll)minp[gcd(x,y)], (ll)minp[x] * (ll)minp[y]) << endl;}
}int main()
{els();cin.tie(0)->sync_with_stdio(false);int t = 1;cin >> t;while (t--){solve();}return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/72276.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

不谓侠--记录

音乐《不谓侠》 衣襟上 别好了晚霞 余晖送我牵匹老马 正路过 烟村里人家 恰似当年故里正飞花 醉过风 喝过茶 寻常巷口寻个酒家 在座皆算老友 碗底便是天涯 天涯远 无处不为家 蓬门自我也像广厦 论意气 不计多或寡 占三分便敢自称为侠 刀可捉 拳也耍 偶尔闲来…

不同规模企业如何精准选择AI工具: DeepSeek、Grok 和 ChatGPT 三款主流 AI 工具深度剖析与对比

本文深入探讨了最近国内外主流的 DeepSeek、Grok 和 ChatGPT 三款主流 AI 工具的技术细节、性能表现、应用场景及局限性&#xff0c;并从技术能力、功能需求、成本预算、数据安全和合规以及服务与支持五个关键维度&#xff0c;详细分析了不同规模企业在选择 AI 工具时的考量因素…

Vue核心知识:KeepLive全方位分析

KeepAlive 是 Vue 组件中的一个重要功能&#xff0c;主要用于缓存组件&#xff0c;以提升性能和用户体验。 目录 一、KeepAlive 基本概念二、KeepAlive 的核心原理三、KeepAlive 关键属性解析1. include&#xff1a;指定需要缓存的组件2. exclude&#xff1a;指定不需要缓存的组…

【电力——tarjan割点,求连通块】

题目 分析 这是割点的板子 代码 #include <bits/stdc.h> using namespace std;const int N 1e410; const int M 3e410;int h[N], e[M], ne[M], idx; int dfn[N], low[N], tot; int root, ans;void add(int a, int b) // 添加一条边a->b {e[idx] b, ne[idx] h…

【HTTP】解码网络通信的奥秘:HTTP,IP 地址,端口,DNS及NAT地址转换的协同之舞

引言 每文学习一句诗&#xff1a;行一棋不足以见智&#xff0c;弹一弦不足以见悲 ——《淮南子说林训》 译文&#xff1a;走一个棋子&#xff0c;不足以现出智慧&#xff1b;弹一根琴弦&#xff0c;不能够使人产生悲哀之情。 自述&#xff1a;互联网现如今已经成为每个人都离不…

18、深拷贝与浅拷贝的区别【中高频】

浅拷贝 浅拷贝只是拷贝了一个指针&#xff0c;并没有开辟一块新的内存。拷贝的指针和原来的指针 指向同一块地址。当一个对象修改了资源&#xff0c;另一个对象也会受到影响&#xff0c;因此浅拷贝是有风险的&#xff1a;当两个对象都销毁 并调用析构函数时&#xff0c;会造成…

【Linux】从入门到精通:Make与Makefile完全指南

欢迎来到 CILMY23 的博客 &#x1f3c6;本篇主题为&#xff1a;从入门到精通&#xff1a;Make与Makefile完全指南 &#x1f3c6;个人主页&#xff1a;CILMY23-CSDN博客 &#x1f3c6;系列专栏&#xff1a;C | C语言 | Linux | Python | 数据结构和算法 | 算法专题 &#x1…

利用PyQt简单的实现一个机器人的关节JOG界面

在上一篇文章中如何在Python用Plot画出一个简单的机器人模型&#xff0c;我们介绍了如何在Python中画出一个简单的机器人3D模型&#xff0c;但是有的时候我们需要通过界面去控制机器人每一个轴的转动&#xff0c;并实时的显示出当前机器人的关节位置和末端笛卡尔位姿。 那么要实…

iOS 使用消息转发机制实现多代理功能

在iOS开发中&#xff0c;我们有时候会用到多代理功能&#xff0c;比如我们列表的埋点事件&#xff0c;需要我们在列表的某个特定的时机进行埋点上报&#xff0c;我们当然可以用最常见的做法&#xff0c;就是设置代理实现代理方法&#xff0c;然后在对应的代理方法里面进行上报&…

XGBoost和LightGBM机器学习算法对比及实战

文章目录 1. XGBoost 原理核心思想关键技术点2. LightGBM 原理核心思想关键技术点3. XGBoost vs LightGBM 对比4. 适用场景选择5. 总结1. 数据准备2. XGBoost 示例安装库代码实现3. LightGBM 示例安装库代码实现4. 关键参数对比5. 注意事项6. 输出示例XGBoost 和 LightGBM 是两…

局域网自动识别机器名和MAC并生成文件的命令

更新版本&#xff1a;添加了MAC 地址 确定了设备唯一性 V1.1 局域网自动识别机器名和MAC并生成文件的批处理命令 echo off setlocal enabledelayedexpansionREM 设置输出文件 set outputFilenetwork_info.txtREM 清空或创建输出文件 echo Scanning network from 192.168.20.1…

基于Python+Vue开发的体育用品商城管理系统源码+开发文档+课程作业

项目简介 该项目是基于PythonVue开发的体育用品商城管理系统&#xff08;前后端分离&#xff09;&#xff0c;这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能&#xff0c;同时锻炼他们的项目设计与开发能力。通过学习基于Python的体…

pyQT5简易教程(一):制作一个可以选择本地图片并显示的桌面应用

可以参考之前的教程安装 PyQt 和 PyQt Designer https://blog.csdn.net/smx6666668/article/details/145909326?spm=1011.2415.3001.10575&sharefrom=mp_manage_link 一、打开pycharm中的QTdesigner 二、设计界面 和之前一样,使用 PyQt Designer 来设计界面并保存为 .u…

LeetCode 解题思路 6(Hot 100)

解题思路&#xff1a; 初始化窗口元素&#xff1a; 遍历前 k 个元素&#xff0c;构建初始单调队列。若当前索引对应值大于等于队尾索引对应值&#xff0c;移除队尾索引&#xff0c;将当前索引加入队尾。遍历结束时当前队头索引即为当前窗口最大值&#xff0c;将其存入结果数组…

基于redis的位图实现签到功能

基于Redis位图实现签到功能是一种高效且节省内存的方法。以下是分步实现的详细方案&#xff1a; 1. 键设计策略 采用 sign:<userId>:<YYYYMM> 格式存储每月签到数据 # 示例&#xff1a;用户1001在2023年8月的签到数据 sign_key "sign:1001:202308"2.…

C++ Qt OpenGL渲染FFmpeg解码后的视频

本篇博客介绍使用OpenGL渲染FFmpeg解码后的视频,涉及到QOpenGLWidget、QOpenGLFunctions、OpenGL shader以及纹理相关,播放效果如下: 开发环境:Win11 C++ Qt6.8.1、FFmpeg4.0、x64   注意:Qt版本不同时,Qt OpenGL API及用法可能差别比较大,FFmpeg版本不同时API调用可能…

deepseek部署:ELK + Filebeat + Zookeeper + Kafka

## 1. 概述 本文档旨在指导如何在7台机器上部署ELK&#xff08;Elasticsearch, Logstash, Kibana&#xff09;堆栈、Filebeat、Zookeeper和Kafka。该部署方案适用于日志收集、处理和可视化场景。 ## 2. 环境准备 ### 2.1 机器分配 | 机器编号 | 主机名 | IP地址 | 部署组件 |-…

2.数据结构:1.Tire 字符串统计

1.Tire 字符串统计 #include<algorithm> #include<cstring> #include<iostream>using namespace std;const int N100010; int son[N][26];//至多 N 层&#xff0c;每一层至多 26 个节点&#xff08;字母&#xff09; int cnt[N];//字符串至多 N 个&#xff…

算法(四)——位运算与位图

文章目录 位运算、位图位运算基本位运算异或运算交换两个数无比较返回最大值缺失的数字唯一出现奇数次的数唯二出现奇数次的数唯一出现次数少于m次的数 位运算进阶判断一个整数是不是2的幂判断一个整数是不是3的幂大于等于n的最小的2的幂[left, right]内所有数字&的结果反转…

本地部署deepseek大模型后使用c# winform调用(可离线)

介于最近deepseek的大火&#xff0c;我就在想能不能用winform也玩一玩本地部署&#xff0c;于是经过查阅资料&#xff0c;然后了解到ollama部署deepseek,最后用ollama sharp NUGet包来实现winform调用ollama 部署的deepseek。 本项目使用Vs2022和.net 8.0开发&#xff0c;ollam…