洛谷100题DAY7

news2024/10/5 19:18:45

31.P1636 Einstein学画画

此题为欧拉通路,必须要满足奇点的个数为0或2个

奇点:度数(入度出度)为奇数的点

如果奇点为2个或者0个就可以直接一笔化成

eg.

 

 我们发现奇数点个数每增加2个就多一笔

#include<bits/stdc++.h>
using namespace std;
const int N = 2e5 + 10;
int n, m, a, b, du[N], ans;
int main()
{ 
	cin >> n >> m;
	for(int i = 1; i <= m; i ++)
	{
		cin >> a >> b;
		du[a] ++, du[b] ++;
	}
	for(int i = 1; i <= n; i ++)
	{
		if(du[i] & 1)ans ++;
	}
	cout << max(1, ans / 2);//最少也得画一笔 
	return 0;
}

32. P1652 圆

我们枚举每一个圆,判断这个圆包含1和2哪个点,如果如果都包含说明这个线不会穿过这个圆,否则就将这个圆的穿线个数+1

#include<bits/stdc++.h>
using namespace std;
const int N = 2e5 + 10;
int n, x[N], y[N], r[N], xx1, yy1, xx2, yy2, ans;
int dist(int xx, int yy, int xxx, int yyy)
{
	return (xxx - xx) * (xxx - xx) + (yyy - yy) * (yyy - yy);
}
int main()
{
	
	cin >> n;
	for(int i = 1; i <= n; i ++)cin >> x[i];
	for(int i = 1; i <= n; i ++)cin >> y[i];
	for(int i = 1; i <= n; i ++)cin >> r[i];
	cin >> xx1 >> yy1 >> xx2 >> yy2;
	for(int i = 1; i <= n; i ++)
	{
		bool d1 = dist(xx1, yy1, x[i], y[i]) <= r[i] * r[i];
		bool d2 = dist(xx2, yy2, x[i], y[i]) <= r[i] * r[i];
		if(d1 ^ d2)ans ++;
	}
	cout << ans;
	return 0;
}

33.P1657 选书

对书进行dfs,看是选a还是选b

#include<bits/stdc++.h>
using namespace std;
const int N = 2e5 + 10;
int x, ans, a[N], b[N];
bool v[N];
void dfs(int dep)
{
	if(dep == x + 1)
	{
		ans ++;
		return;
	}
	if(!v[a[dep]])
	{
		v[a[dep]] = 1;
		dfs(dep + 1);
		v[a[dep]] = 0;
	}
	if(!v[b[dep]])
	{
		v[b[dep]] = 1;
		dfs(dep + 1);
		v[b[dep]] = 0;
	}
}
int main()
{
	cin >> x;
	for(int i = 1; i <= x; i ++)
	{
		cin >> a[i] >> b[i];
	}
	dfs(1);
	cout << ans << '\n';
	return 0;
}

34.P1795 无穷的序列

找规律,将为1的数的下标先预处理出来

#include<bits/stdc++.h>
using namespace std;
vector<int> v;
int n, x;
int main()
{
	ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
	for(int i = 1, j = 0; i <= 1e9; i += j ++)v.push_back(i);
	cin >> n;
	for(int i = 1; i <= n; i ++)
	{
		cin >> x;
		auto it = lower_bound(v.begin(), v.end(), x);
		bool flag = (it != v.end() && *it == x);
		if(flag)cout << 1 << '\n';
		else cout << 0 << '\n';
	}
	return 0;
}

 35.P1757 通天之分组背包

我们可以将分出的组别用v[N]来记录,将同一组存入同一个v[N]中去,从而转化为背包问题

dp[i][j]表示到i组为止,总重量为j的最大价值

#include<bits/stdc++.h>
using namespace std;
const int N = 2e3 + 10;
vector<pair<int, int>> v[N];
int n, m, a, b, c, dp[N][N];
int main()
{
	cin >> m >> n;
	for(int i = 1; i <= n; i ++)
	{
		cin >> a >> b >> c;
		v[c].push_back({a, b});
	}
	for(int i = 1; i <= n; i ++)
	{
		for(int j = 0; j <= m; j ++)
		{
			dp[i][j] = dp[i - 1][j];
			for(auto k : v[i])
			if(j >= k.first)dp[i][j] = max(dp[i][j], dp[i - 1][j - k.first] + k.second);
		}
	}
	cout << dp[n][m];
	return 0;
}

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

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

相关文章

数据结构和算法(11):红黑树

概述 伸展树实现简便、无需修改节点结构、分摊复杂度低&#xff0c;但可惜最坏情况下的单次操作需要O(n)时间。 AVL树尽管可以保证最坏情况下的单次操作速度&#xff0c;但需在节点中嵌入平衡因子等标识&#xff1b;更重要的是&#xff0c;删除操作之后的重平衡可能需做多达O(…

【DRAM存储器十三】DDR介绍-功能框图和模式寄存器解析

&#x1f449;个人主页&#xff1a;highman110 &#x1f449;作者简介&#xff1a;一名硬件工程师&#xff0c;持续学习&#xff0c;不断记录&#xff0c;保持思考&#xff0c;输出干货内容 参考资料&#xff1a;《镁光DDR数据手册》 目录 DDR SDRAM芯片引脚 DDR SDRAM芯片框…

校园跑腿小程序还受欢迎不?

校园跑腿小程序是如今大学生群体中越来越受欢迎的一种服务模式。它为大学生提供了一个便捷的平台&#xff0c;使他们能够在校园内完成各类生活事务&#xff0c;如购买食品、快递取送、打印复印等。这种形式的服务在过去几年里在全球范围内迅速发展&#xff0c;并取得了巨大的成…

大学专业分类及介绍 专业有哪些

大学的专业非常多样化&#xff0c;涵盖了哲学、经济学、法学、教育学、文学、历史学、理学、工学、农学、医学、管理学、艺术学等12个学科门类。每个学科门类下又设有多个具体专业。 哲学类下设专业有4个&#xff0c;包括哲学、逻辑学、宗教学、伦理学。 经济学类下设专业有17…

外汇天眼:CONSOB下令封禁5个非法金融服务网站 总数达945个!

负责监管意大利金融市场的监管机构意大利公司和交易委员会The Commissione Nazionale per le Societ e la Borsa &#xff08;CONSOB&#xff09;10月6日发布禁令&#xff0c;命令意大利互联网服务提供商&#xff08;ISP&#xff09;关闭5个在意大利境内提供非法金融服务的网站…

【Codeforces】Educational Codeforces Round 156 [Rated for Div. 2]

hh第一次记录cf。 复盘 ab题目比较清晰&#xff0c;只开了这两题&#xff0c;后面看了下cd&#xff0c;即使开了翻译也看不懂题目是什么意思&#xff0c;最后放弃睡觉了。。 a是一道思维题&#xff0c;翻了下别人写的发现大家写的各不相同hh b是一道数学题&#xff0c;过程有点…

改element的单选框的样式,改成方形有勾的样式

element-ui单选框按钮的样式改成对钩_el-radio 变对钩样式-CSDN博客 改变选中后字体的颜色 // 改变选中后字体的颜色 ::v-deep .el-radio__input.is-checked .el-radio__label {color:#28d4c1!important; }

2.1 线程是什么

技术上来说&#xff0c;线程是操作系统能够操作运行的一组独立的指令运算流程&#xff1b;更具体地来说&#xff0c;它的意义如下。 对于开发者&#xff0c;独立于主程序运行的一个“程序”可以称为一个线程。更进一步来说&#xff0c;如果一个应用包含多个“程序”&#xff0c…

计算顺序表中值在100到500之间的元素个数

要求顺序表中值在100到500之间的元素的个数&#xff0c;你可以使用C语言编写一个循环来遍历顺序表中的元素&#xff0c;并在循环中检查每个元素是否在指定的范围内。 #include <stdio.h>#define MAX_SIZE 100 // 假设顺序表的最大容量为100int main() {int arr[MAX_SIZE]…

车载开发所学内容,有哪些?程序员的转岗位需求

一、高速发展的行业前景 随着全球智能汽车市场的飞速发展&#xff0c;车载开发行业的前景可谓一片光明。各国政府对于自动驾驶和智能交通系统的政策支持&#xff0c;为行业带来了前所未有的机遇。此外&#xff0c;人工智能、大数据、云计算等前沿技术的不断突破&#xff0c;为…

C#,数值计算——数据建模Fitlin的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { /// <summary> /// General linear fit /// </summary> public class Fitlin { private int ndat { get; set; } private int ma { get; set; } private do…

项目管理必备的22个公式

大家好&#xff0c;我是老原。 趁着国庆时间比较空闲&#xff0c;给你们整理了一些项目管理必备的计算公式&#xff0c;一共22个。 每一个公式都给你们标注了适用情况和使用方法&#xff0c;为了方便你们理解&#xff0c;也加了一些例子&#xff0c;保准你看了就会。 觉得不…

增强基于Cortex-M3的MCU以处理480 Mbps高速USB

通用串行总线&#xff08;USB&#xff09;完全取代了PC上的UART&#xff0c;PS2和IEEE-1284并行接口&#xff0c;现在已在嵌入式开发应用程序中得到广泛认可。嵌入式开发系统使用的大多数I / O设备&#xff08;键盘&#xff0c;扫描仪&#xff0c;鼠标&#xff09;都是基于USB的…

MySQL数据库基本操作-DQL-聚合查询

简介 使用聚合函数查询是纵向查询&#xff0c;它是对一列的值进行计算&#xff0c;然后返回一个单一的值&#xff1b;另外聚合函数会忽略空值。 字段说明&#xff1a; product 是一个表pname 是商品名price 是 价格category_id 是分类 -- 1 查询商品的总条数 select count(…

Ubuntu20.04系统安装cuda11.3

在官网下载cuda进行安装&#xff1a; 官网链接&#xff1a;CUDA Toolkit Archive | NVIDIA Developer 再官网版本中选择需要的版本&#xff0c;本身需要cuda11.3 cuda版本选择后&#xff0c;选择系统信息后复制命令进行下载&#xff08;我是ubuntu20.04,aarch64 架构&#xf…

清华智谱AI大模型ChatGLM-Pro申请开通教程

清华智谱AI大模型ChatGLM-Pro申请开通教程 ChatGLM系列模型&#xff0c;包括ChatGLM-130B和ChatGLM-6B模型&#xff0c;支持相对复杂的自然语言指令&#xff0c;并且能够解决困难的推理类问题。其中&#xff0c;ChatGLM-6B模型吸引了全球超过 160 万人下载安装&#xff0c;该模…

磷矿石和磷精矿中氧化镁含量的测定

声明 本文是学习GB-T 1871.5-2022 磷矿石和磷精矿中氧化镁含量的测定 火焰原子吸收光谱法、容量法和电感耦合等离子体发射光谱法. 而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 1 范围 本文件描述了在磷矿石和磷精矿中测定氧化镁含量的火焰原子吸收…

GRADIENT BASED THRESHOLD FREE COLOR FILTER ARRAY INTERPOLATION

ABSTRACT 彩色滤波器阵列(CFA)插值是单传感器数字相机图像处理管道的组成部分。多年来&#xff0c;许多CFA算法被提出以提高图像质量。其中一个算法就是非常成功的定向线性最小均方误差估计(Directional Linear Minimum Mean-Square Error Estimation, DLMMSE)方法。我们对该算…

JavaScript使用throw new Error自定义错误信息

有些时候 我们自己写了一个组件 但是怕同事不了解我们的组件 传入了错误的类型或者数据 导致逻辑报错 同事还会觉得我们的组件写的莫名其妙 我们就可以自己写判断 例如我这个代码 我判断 如果同事传入的 type 为 false 或者 在我自己的集合中找不到 外面传入的type类型 我就直…

【G-LAB】带你掌握网络交换机上各种接口知识

点击上方关注我们 交换机是一种用于电&#xff08;光&#xff09;信号转发的网络设备。可以为接入交换机的任意两个网络节点提供独享的电信号通路。最常见的交换机是以太网交换机。其他常见的还有电话语音交换机、光纤交换机等。交换机是使用非常广泛的网络设备。多台网络设备…