lqb日志08

一只小蒟蒻备考蓝桥杯的日志

文章目录

    • 笔记
      • 坐标相遇判断
      • 工作调度问题(抽象时间轴绘制)
    • 刷题
    • 心得
    • 小结

笔记

坐标相遇判断

在这里插入图片描述
我是小懒虫,碰了一下运气,开了个“恰当”的数(7000)如果,7000次还不能抓到牛,就算不能

工作调度问题(抽象时间轴绘制)

在这里插入图片描述

方案一源码网址
在这里插入图片描述

在这里插入图片描述
方案二(我写完才发现…实现的是它…)

#include <stdio.h>
#include <iostream>
#include <string.h>

using namespace std;

int main() {
	int m, n; //m:机器数(工序数) n:工件数
	cin >> m >> n;
	int squeue[m * n + 5];
//	getchar();
	
	for(int i = 1; i <= m * n; i++) {
		cin >> squeue[i];
	}
	int single[n + 5][m + 5];
	for(int i = 1; i <= n; i++) {
		for(int j = 1; j <= m; j++) {
			cin >> single[i][j];
		}
//		cin >> single[i][0] >> single[i][1];
		// single[i][j] 第i个工件的第j个工序需要的机器
	}
	int time[n + 5][m + 5];
	for(int i = 1; i <= n; i++) {
		for(int j = 1; j <= m; j++) {
			cin >> time[i][j];
		}
//		cin >> time[i][0] >> time[i][1];
		// time[i][j] 第i个工件的第j个工序花费的时间
	}
	
	int finished[n + 5][3]; // finished[i]  第i个工件 
	// 0:第x个工序已经完成了 1:时间已经耗费y
	for(int i = 1; i <= n; i++) {
		finished[i][0] = 0;
		finished[i][1] = 0;
	}
//	memset(finished, 0, sizeof(finished)); 
	
	int machine_used[m + 5]; // 机器i的占用时间已经排到machine[i]了
	memset(machine_used, 0, sizeof(machine_used));
	
	for(int r = 1; r <= m * n; r++) {
		int checked_machine_num = 0;
		bool checked_machine[m + 5];
		memset(checked_machine, false, sizeof(checked_machine));
		for(int t = r; t <= m * n && checked_machine_num <= m; t++) {
			int gongjian = squeue[t];
			// 这次轮到squeue[t]工件来用机器啦
			// 需要的机器是 single[gongjian][(finished[gongjian][0]+1)]
			// 第 finished[gongjian][0] 个工序已完成
			// 对应时间已经排到 [1]
			int machine_inneed = single[gongjian][(finished[gongjian][0] + 1)];
			if(checked_machine[machine_inneed] == false) {
				checked_machine[machine_inneed] = true;
				checked_machine_num++;
				int the_earliest_usetime = (machine_used[machine_inneed] > finished[gongjian][1] ? machine_used[machine_inneed] : finished[gongjian][1]);
				machine_used[machine_inneed] = the_earliest_usetime + time[gongjian][finished[gongjian][0] + 1];
				finished[gongjian][1] = the_earliest_usetime + time[gongjian][finished[gongjian][0] + 1];
				finished[gongjian][0]++;
				cout << gongjian << ":" << endl;
				cout << "已完成工序数:" << finished[gongjian][0] << "  " << "时间已达:" << finished[gongjian][1] << endl;
			}
			
		} 
		
	}
	
	return 0;
}

刷题

  1. P1518 [USACO2.4] 两只塔姆沃斯牛 The Tamworth Two
  2. P1065 [NOIP2006 提高组] 作业调度方案 没有真的写出来,看我心情再手写吧,好麻烦,有点性价比不太高

心得

  1. 第1题(抓牛)避大雷!
    在这里插入图片描述
    我嘞个逗,getline 决定了 mp[i][j] i 是行号,就是正常 x-y 坐标轴的 y !
    所以,后面的(数组下标模拟坐标移动)都写错了…
    我嘞个逗,又写错了,这个 x 方向是向下的
    在这里插入图片描述
    以后一行行读入,注意它xy轴真正含义,以及递增方向
  2. 第2题,小蒟蒻要yue出来啦!好bt的模拟题…
    (崩溃…小蒟蒻难得写这么多注释…)
    在这里插入图片描述
    崩溃+1,写完发现,自己的算法实现的是弃用的方案二…
    在这里插入图片描述
    模拟,用时间轴插空+屡次遍历
    不过,感觉这题,想要真正理解题意,还蛮困难的…

小结

今天专攻模拟,过了一道[普及/提高-],盘明白了一道[普及/提高-],差强人意吧。
明天,还有三道[普及/提高-],再折腾一天模拟类的题,要进入下一个主题了!

加油! ! !

小蒟蒻好荣幸发现自己的备赛日志受到你的关注,2024寒假无特殊情况坚持日更!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用sdbg执行smali简单片段解混淆

https://github.com/CalebFenton/simplify/releases/download/v1.3.0/sdbg-0.1.0.jar "C:\Program Files\Java\jre-1.8\bin\java.exe" -jar sdbg-0.1.0.jar smali "Lu/ad;->c()V"其中smali为文件夹名称。 ###### Class p124u.C12414ad (u.ad) .class …

Modern C++ std::unique_ptr的实现原理

​ unique_ptr是一个非常简单的类,没有计数没有原子操作,非常类似纯指针。 它的类定义也非常简单: 它针对数组做了模板偏特化,因为它得支持数组操作比如Arr[i]。 unique_ptr的本质就是std::tuple, 里面第一项为指针指向管理对象,第二项为deleter:是一个函数指针或仿函数…

电脑屏幕色彩调整

显卡驱动 如果你的电脑是笔记本且没有独显直连&#xff0c;那你就不能在独显里面调屏幕色彩&#xff0c;就要去下载对应核显的驱动&#xff0c;然后去核显的驱动程序里面可以调节。比如&#xff1a;我的笔记本是华硕天选2&#xff0c;无独显直连&#xff0c;锐龙处理器&#x…

Nginx基础篇【一】

Nginx基础篇【一】 一、Nginx基础篇【一】1.1.背景介绍1.2.名词解释1.2.1. WEB服务器&#xff1a;1.2.2. HTTP:1.2.3. POP3/SMTP/IMAP&#xff1a;1.2.4. 反向代理1.2.5.常见服务器对比1.2.5.1.IIS1.2.5.2.Tomcat1.2.5.3.Apache1.2.5.4.Lighttpd1.2.5.5.其他的服务器 1.3.Nginx…

跟着cherno手搓游戏引擎【12】渲染context和首个三角形

渲染上下文&#xff1a; 目的&#xff1a;修改WindowsWindow的结构&#xff0c;把glad抽离出来 WindowsWindow.h:新建m_Context #pragma once #include "YOTO/Window.h" #include <YOTO/Renderer/GraphicsContext.h> #include<GLFW/glfw3.h> #include…

Ps:将文件载入堆栈

Ps菜单&#xff1a;文件/脚本/将文件载入堆栈 Scripts/Load Files into Stack 将文件载入堆栈 Load Files into Stack脚本命令可用于将两个及以上的文件载入到同一个 Photoshop 新文档中。 载入的每个文件都将成为独立的图层&#xff0c;并使用其原始文件名作为图层名。 Photos…

GraphicsMagick 的 OpenCL 开发记录(二十五)

文章目录 如何修复R6025 pure virtual function call问题 <2022-04-19 周二> 如何修复R6025 pure virtual function call问题 运气好&#xff0c;修复了这个问题。即&#xff0c;在ExitInstance()函数中调用一下MagickLib::DestroyMagick();即可。 过程中也经历了尝试…

CSS探索浏览器兼容性

学习如何探索浏览器的兼容性对于编写跨浏览器兼容的CSS代码非常重要。以下是一些学习CSS兼容性的方法&#xff1a; MDN文档&#xff1a;Mozilla开发者网络&#xff08;MDN&#xff09;提供了广泛而详细的CSS文档&#xff0c;其中包含有关CSS属性、选择器和功能的信息。在MDN上…

最新技术实战 | 无视杀软使用远控工具进行横向移动Tips

最新技术实战 | 无视杀软使用远控工具进行横向移动Tips。 杀软是什么意思&#xff1f;杀软是杀毒软件的简称&#xff0c;取的杀毒首字与软件首字组合而成&#xff0c;将杀毒软件简要的称之为杀软&#xff0c;所以&#xff0c;杀软的意思就是杀毒软件&#xff0c;专注于信息领域…

day34_js

今日内容 0 复习昨日 1 事件 1.1 事件介绍 1.2 事件绑定方式 1.3 不同事件的演示 2 DOM操作 2.1 概述 2.2 查找元素 2.3 元素内容的查找和设置 2.4 元素属性的查找和设置 2.5 元素CSS样式的查找和设置 2.6 创建元素 2.7 创建文本节点 2.8 追加元素 2.9 删除元素 3 案例练习 0 复…

基于springboot+vue的明星周边产品销售网站(前后端分离)

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 研究背景…

如何快速在阿里云上更新幻兽帕鲁服务器?

如何快速在阿里云上更新幻兽帕鲁服务器&#xff1f;幻兽帕鲁更新之后&#xff0c;服务器需要同步更新才能继续游戏&#xff0c;大家可以按照文章操作完成服务升级。 1、如果大家是通过阿里云计算巢部署的&#xff0c;请参考&#xff1a;计算巢部署更新方式。 2、如果不是通过阿…

前端——HTML

目录 文章目录 前言 一.HTML的基本标签 二.HTML标签 1.块级标签 1.1块级标签特征 1.2标题标签 ​编辑 1.3 水平线标签 1.4 段落标签 1.5 无序列表标签 1.6 有序列表标签 1.7 表格标签 1.8层标签 1.9 表单 2. 行级标签 2.1行级标签特征 2.2图像标签 2.3 范围…

epoll示例

一、服务端 下面是一个使用epoll机制在Linux上编写的简单套接字程序示例&#xff1a; #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <sys/socket.h> #include <netinet/in.h> #include &l…

一天吃透面试八股文

内容摘自我的学习网站&#xff1a;topjavaer.cn 分享50道Java并发高频面试题。 线程池 线程池&#xff1a;一个管理线程的池子。 为什么平时都是使用线程池创建线程&#xff0c;直接new一个线程不好吗&#xff1f; 嗯&#xff0c;手动创建线程有两个缺点 不受控风险频繁创…

滴水逆向三期笔记与作业——02C语言——10 Switch语句反汇编

滴水逆向三期笔记与作业——02C语言——10 Switch语句反汇编 一、Switch语句1、switch语句 是if语句的简写2、break加与不加有什么特点?default语句可以省略吗&#xff1f;3、游戏中的switch语句&#xff08;示例&#xff09;4、添加case后面的值&#xff0c;一个一个增加&…

LLM之llm-viz:llm-viz(3D可视化GPT风格LLM)的简介、安装和使用方法、案例应用之详细攻略

LLM之llm-viz&#xff1a;llm-viz(3D可视化GPT风格LLM)的简介、安装和使用方法、案例应用之详细攻略 目录 llm-viz的简介 1、LLM可视化 2、CPU模拟&#xff08;WIP&#xff1b;尚未公开&#xff01;&#xff09; llm-viz的安装和使用方法 llm-viz的案例应用 1、三维可视化…

【云原生】k8s图形化管理工具之rancher

k8s的图形化工具-----rancher rancher是一个开源的企业级多集群的k8s管理平台。 rancher和k8s区别: 都是为了容器的调度和编排系统&#xff0c;但是rancher不仅能够调度&#xff0c;还能管理k8s集群&#xff0c;自带监控(普罗米修斯)&#xff0c;大公司都是图形化。 ranche…

Stable Diffusion与Midjourney:如何做出明智之选?

Stable Diffusion与Midjourney&#xff1a;如何做出明智之选&#xff1f; 在人工智能领域中&#xff0c;Stable Diffusion和Midjourney是两个备受瞩目的技术。它们各自具有独特的特点和优势&#xff0c;但选择哪一个更适合您的需求呢&#xff1f;本文将为您详细分析两者的差异…

Linux 驱动开发基础知识—— 具体单板的 LED 驱动程序(五)

个人名片&#xff1a; &#x1f981;作者简介&#xff1a;一名喜欢分享和记录学习的在校大学生 &#x1f42f;个人主页&#xff1a;妄北y &#x1f427;个人QQ&#xff1a;2061314755 &#x1f43b;个人邮箱&#xff1a;2061314755qq.com &#x1f989;个人WeChat&#xff1a;V…