1107校门外的树(C语言)

目录

一:题目

二:思路

2.1数学模型

2.2举一反三

三:代码


一:题目

二:思路

2.1数学模型

如果按上图所画,思路其实很简单,用原本种树的长度减去铁路的长度,但是题目所给的是所修铁路可能有重叠的部分

如果再用长度减,就有重复减去的部分,这是这个数学模型貌似用代码很难敲出。

2.2举一反三

在上篇讲解2037问题时,我们曾用0表示未出列的人,1表示出列的人。

这个题,我们可以用相同的数组标记法,用0表示种树,1表示要修铁路的部分,这样就算是重复的部分,也就是两次置为1,不影响结果,最后数零的个数

三:代码

复制代码
#include <stdio.h>
int main()
{
	int arr[10005] = { 0 };
	int l = 0, m = 0;
	scanf("%d %d", &l, &m);
	int i = 0;
	for (i = 0; i < m; i++)
	{
		int x = 0, y = 0;
		scanf("%d %d", &x, &y);
		int j = 0;
		for (j = x; j <= y; j++)
		{
			arr[j] = 1;
		}
	}
	int cont = 0;
	for (i = 0; i <= l; i++)
	{
		if (arr[i] == 0)
		{
			cont++;
		}
	}
	printf("%d", cont);
	return 0;
}
相关推荐
星火开发设计3 分钟前
C++ 输入输出流:cin 与 cout 的基础用法
java·开发语言·c++·学习·算法·编程·知识
We་ct14 分钟前
LeetCode 289. 生命游戏:题解+优化,从基础到原地最优
前端·算法·leetcode·矩阵·typescript
自己的九又四分之三站台15 分钟前
9:MemNet记忆层使用,实现大模型对话上下文记忆
人工智能·算法·机器学习
曹牧25 分钟前
Java:强类型转换
开发语言·python
wuguan_28 分钟前
C#之线程
开发语言·c#
LXS_35731 分钟前
STL - 函数对象
开发语言·c++·算法
aini_lovee35 分钟前
基于粒子群算法(PSO)优化BP神经网络权值与阈值的实现
神经网络·算法
木千36 分钟前
Qt5.15.2安装MSVC2019编译器
开发语言·qt
仟濹40 分钟前
【Java加强】1 异常 | 打卡day1
java·开发语言·python
去往火星43 分钟前
Qt6 CMake 中引入 Qt Linguist 翻译功能
开发语言·qt