三道模拟题

P1003 [NOIP2011 提高组] 铺地毯

题目描述

原题点这里-->P1003 [NOIP2011 提高组] 铺地毯 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯。一共有 n 张地毯,编号从 11 到 n。现在将这些地毯按照编号从小到大的顺序平行于坐标轴先后铺设,后铺的地毯覆盖在前面已经铺好的地毯之上。

地毯铺设完成后,组织者想知道覆盖地面某个点的最上面的那张地毯的编号。注意:在矩形地毯边界和四个顶点上的点也算被地毯覆盖。

输入格式

输入共 n+2 行。

第一行,一个整数 n,表示总共有 n 张地毯。

接下来的 n 行中,第 i+1 行表示编号 i 的地毯的信息,包含四个整数a,b,g,k,每两个整数之间用一个空格隔开,分别表示铺设地毯的左下角的坐标 (a,b) 以及地毯在 x 轴和 y 轴方向的长度。

第 n+2 行包含两个整数 x 和 y,表示所求的地面的点的坐标 (x,y)。

输出格式

输出共 1 行,一个整数,表示所求的地毯的编号;若此处没有被地毯覆盖则输出 -1

输入输出样例

输入 #1

3
1 0 2 3
0 2 3 3
2 1 3 3
2 2

输出 #1

3

输入 #2

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

输出 #2

-1

说明/提示

【样例解释 1】

如下图,11 号地毯用实线表示,22 号地毯用虚线表示,33 号用双实线表示,覆盖点 (2,2)(2,2) 的最上面一张地毯是 33 号地毯。

【数据范围】

对于 30%30% 的数据,有 n≤2。
对于 50%50% 的数据,0≤a,b,g,k≤100。
对于 100%100% 的数据,有 0≤n≤10000, 0≤a,b,g,k≤100000。

解题过程

找到最后一块覆盖目标点的地毯即可,所以我们从后往前遍历每块地毯,寻找能覆盖目标点的地毯。如果地毯的左下角横纵坐标小于等于目标点的横纵坐标,并且地毯的右上角横纵坐标大于等于目标点的横纵坐标,说明该地毯覆盖目标点。 

源代码

#include<stdio.h>typedef struct{int x,y,lx,ly;//地毯左下角坐标和地毯x,y轴上的长度 
}DT;DT dt[10010];//储存每块地毯的数据 int main()
{int n,kx,ky;scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d%d%d%d",&dt[i].x,&dt[i].y,&dt[i].lx,&dt[i].ly);} scanf("%d%d",&kx,&ky);//从最后一块地毯往前遍历 for(int i=n;i>=1;i--) {//如果地毯的左下角横纵坐标小于等于目标点的横纵坐标,并且地毯的右上角横纵坐标大于等于目标点的横纵坐标,说明该地毯覆盖该点 if(dt[i].x<=kx&&dt[i].y<=ky&&dt[i].x+dt[i].lx>kx&&dt[i].y+dt[i].ly>ky){printf("%d",i);return 0;}}//没有覆盖目标点的地毯输出-1 printf("-1");return 0;
}

P1067 [NOIP2009 普及组] 多项式输出

题目描述

原题点这里-->P1067 [NOIP2009 普及组] 多项式输出 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

一元 n 次多项式可用如下的表达式表示:

f(x)=an​xn+an−1​xn−1+⋯+a1​x+a0​,an​=0

其中,ai​xi 称为 i 次项,ai​ 称为 i 次项的系数。给出一个一元多项式各项的次数和系数,请按照如下规定的格式要求输出该多项式:

  1. 多项式中自变量为 x,从左到右按照次数递减顺序给出多项式。

  2. 多项式中只包含系数不为 0 的项。

  3. 如果多项式 n 次项系数为正,则多项式开头不出 + 号,如果多项式 n 次项系数为负,则多项式以 - 号开头。

  4. 对于不是最高次的项,以 + 号或者 - 号连接此项与前一项,分别表示此项系数为正或者系数为负。紧跟一个正整数,表示此项系数的绝对值(如果一个高于0 次的项,其系数的绝对值为 11,则无需输出 1)。如果 x 的指数大于 1,则接下来紧跟的指数部分的形式为“xb”,其中 b 为 x 的指数;如果 x 的指数为 1,则接下来紧跟的指数部分形式为 x;如果 x 的指数为 0,则仅需输出系数即可。

  5. 多项式中,多项式的开头、结尾不含多余的空格。

输入格式

输入共有 2 行

第一行 1 个整数,n,表示一元多项式的次数。

第二行有 n+1 个整数,其中第 i 个整数表示第 n−i+1 次项的系数,每两个整数之间用空格隔开。

输出格式

输出共 1 行,按题目所述格式输出多项式。

输入输出样例

输入 #1

5 
100 -1 1 -3 0 10

输出 #1

100x^5-x^4+x^3-3x^2+10

输入 #2

3 
-50 0 0 1 

输出 #2

-50x^3+1 

说明/提示

NOIP 2009 普及组 第一题

对于100%数据,0≤n≤100,−100≤系数≤100

解题过程

将输出内容拆成两部分(系数部分和指数部分)考虑即可。需要充分考虑各种情况。

源代码

#include<stdio.h>int main()
{int n;scanf("%d",&n);int a;int t=n;while(t>=0){scanf("%d",&a);//输出系数部分if(n==0){printf("%d",a);} else if(a==0){}else if(t==n){if(a!=1&&a!=-1)printf("%d",a);if(a==-1)printf("-");}else if(t!=0){if(a!=1&&a!=-1)printf("%+d",a);if(a==-1)printf("-");if(a==1)printf("+");}else{printf("%+d",a);}//输出次数部分if(a&&t){if(t==1)printf("x");elseprintf("x^%d",t);}t--;	}return 0;
}

P1540 [NOIP2010 提高组] 机器翻译

题目描述

原题点这里-->P1540 [NOIP2010 提高组] 机器翻译 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章。

这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换。对于每个英文单词,软件会先在内存中查找这个单词的中文含义,如果内存中有,软件就会用它进行翻译;如果内存中没有,软件就会在外存中的词典内查找,查出单词的中文含义然后翻译,并将这个单词和译义放入内存,以备后续的查找和翻译。

假设内存中有 M 个单元,每单元能存放一个单词和译义。每当软件将一个新单词存入内存前,如果当前内存中已存入的单词数不超过 M−1,软件会将新单词存入一个未使用的内存单元;若内存中已存入 M 个单词,软件会清空最早进入内存的那个单词,腾出单元来,存放新单词。

假设一篇英语文章的长度为 N 个单词。给定这篇待译文章,翻译软件需要去外存查找多少次词典?假设在翻译开始前,内存中没有任何单词。

输入格式

共 2 行。每行中两个数之间用一个空格隔开。

第一行为两个正整数M,N,代表内存容量和文章的长度。

第二行为 N 个非负整数,按照文章的顺序,每个数(大小不超过 1000)代表一个英文单词。文章中两个单词是同一个单词,当且仅当它们对应的非负整数相同。

输出格式

一个整数,为软件需要查词典的次数。

输入输出样例

输入 #1

3 7
1 2 1 5 4 4 1

输出 #1

5

说明/提示

样例解释

整个查字典过程如下:每行表示一个单词的翻译,冒号前为本次翻译后的内存状况:

  1. 1:查找单词 1 并调入内存。
  2. 1 2:查找单词 2 并调入内存。
  3. 1 2:在内存中找到单词 1。
  4. 1 2 5:查找单词 5 并调入内存。
  5. 2 5 4:查找单词 4 并调入内存替代单词 1。
  6. 2 5 4:在内存中找到单词 4。
  7. 5 4 1:查找单词 1 并调入内存替代单词 2。

共计查了 55 次词典。

数据范围

  • 对于 10%10% 的数据有 M=1,N≤5;
  • 对于 100%100% 的数据有 11≤M≤100,1≤N≤1000。

 解题过程

第n-1个需要存入内存的数存储在内存的第(n-1)%M个位置(从第0个位置开始存)。

源代码

#include<stdio.h>bool a[1005];//a[i]用于判断i是否在内存中 
int nc[105];//记录内存中储存的数 
int b=0;
int main()
{int m,n;scanf("%d%d",&m,&n);//初始化nc数组中的数为-1 for(int i=0;i<=m;i++)nc[i]=-1;int t;for(int i=0;i<n;i++){scanf("%d",&t);if(!a[t])//内存中没有 {a[nc[b%m]]=false;a[t]=true; nc[b%m]=t;//将t存入内存,将内存中的第b%m位移出内存 b++;//每次内存中找不到都需要往内存中存储一次 }}printf("%d",b);return 0;
}

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

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

相关文章

【Redis 神秘大陆】007 安全监控

七、Redis 安全&监控 当你发现这些内容对你有帮助时&#xff0c;为了支持我的工作&#xff0c;不妨给一个免费的⭐Star&#xff0c;这将是对我最大的鼓励&#xff01;感谢你的陪伴与支持&#xff01;一起在技术的路上共同成长吧&#xff01;点击链接&#xff1a;GitHub | …

【C++】哈希一

这篇博客要说的是哈希算法&#xff0c;哈希又称为散列&#xff0c;它是将存储的值和存储的位置建立起关联关系的一种算法&#xff0c;或者说是一种将任意长度的数据映射为固定长度的输出的算法。 什么意思呢&#xff1f;我们来看一个例子&#xff1a;比如说我们要存储1&#xf…

excel试题转word格式

序号试题选项答案 格式如上。输出后在做些适当调整就可以。 import pandas as pd from docx import Document from docx.shared import Inches# 读取Excel文件 df pd.read_excel(r"你的excel.xlsx")# 创建一个新的Word文档 doc Document()# 添加标题 doc.add_headi…

【SLAM】在Win10上实现Nerf-Pytorch【GPU版】

文章目录 ReadMe安装依赖运行下载两个示例数据集:lego和fern训练一个低分辨率的Lego NeRF:训练一个低分辨率蕨类植物NeRF:更多数据集预训练模型可复现实现1、下载nerf-pytorch工程2、安装依赖3、下载数据4、运行lego NeRF:ReadMe Github链接 NeRF (神经辐射场)是一种在合成…

基于变压器的手持式超声图像中乳腺病变的分类不一致性测量表征

超声成像作为一种替代的低成本、易于获取的非电离成像方式已显示出巨大的前景&#xff0c;可用于乳腺癌筛查。特别是&#xff0c;随着最近便携式设备的出现&#xff0c;超声检查预计将在中低收入国家中越来越普及。然而&#xff0c;超声成像在乳腺癌诊断中的可靠性高度依赖于操…

如何防范XSS?

XSS&#xff08;跨站脚本攻击&#xff09;通常通过注入恶意脚本到其他用户的浏览器中来实现。为了防范XSS&#xff0c;您可以采取以下措施&#xff1a; 输入验证&#xff1a;对所有用户输入进行验证&#xff0c;确保其内容符合预期的格式和类型。例如&#xff0c;如果您正在构建…

竞赛 基于GRU的 电影评论情感分析 - python 深度学习 情感分类

文章目录 1 前言1.1 项目介绍 2 情感分类介绍3 数据集4 实现4.1 数据预处理4.2 构建网络4.3 训练模型4.4 模型评估4.5 模型预测 5 最后 1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基于GRU的 电影评论情感分析 该项目较为新颖&#xff0c;适合作为竞…

Java基础入门day33

day33 html 表单 表单实现与用户的可交互操作 表单可以用来收集用户输入信息 form表单标签&#xff0c;可以在页面上添加一个表单元素&#xff0c;表单本身没有边界 属性action&#xff0c;目标地址&#xff0c;表单提交后要跳转的对应的url地址 属性method&#xff1a; get…

【数据结构|C语言版】双向链表

前言1. 初步认识双向链表1.1 定义1.2 结构1.3 储存 2. 双向链表的方法&#xff08;接口函数&#xff09;2.1 动态申请空间2.2 创建哨兵位2.3 查找指定数据2.4 指定位置插入2.5 指定位置删除2.6 头部插入2.7 头部删除2.8 尾部插入2.9 尾部删除2.10 计算链表大小2.11 销毁链表 3.…

【LeetCode热题100】【贪心算法】划分字母区间

题目链接&#xff1a;763. 划分字母区间 - 力扣&#xff08;LeetCode&#xff09; 要将一个字符串划分为多个子串&#xff0c;要求每个字母只能出现在一个子串里面 如果一个字母的当前位置是它在这个字符串里面最后一次出现的位置&#xff0c;那么这里就应该划分出来成为子串…

记录一下hive跑spark的insert,update语句报类找不到的问题

我hive能正常启动&#xff0c;建表没问题&#xff0c;我建了一个student表&#xff0c;没问题&#xff0c;但执行了下面一条insert语句后报如下错误&#xff1a; hive (default)> insert into table student values(1,abc); Query ID atguigu_20240417184003_f9d459d7-199…

【Image captioning】论文阅读九—Self-Distillation for Few-Shot Image Captioning_2022

摘要 大规模图像字幕数据集的开发成本高昂,而大量未配对的图像和文本语料库可能有助于减少手动注释的工作。在本文中,我们研究了只需要少量带注释的图像标题对的少样本图像标题问题。我们提出了一种基于集成的自蒸馏方法,允许使用不成对的图像和字幕来训练图像字幕模型。该…

VBA脚本: excel隐藏和展开指定行 【图文】

打开开发工具功能 【文件】-》【选项】-》【自定义功能区】-》勾选【开发工具】-》【确定】 代开VBA编辑器 【开发工具】-》【Visual Basic】 插入模块 编写代码 所有sheet 关闭 Sub HideRowsInAllSheets()Dim ws As WorksheetDim i As Integer 循环遍历所有工作表For E…

【学习笔记】Python大数据处理与分析——Matplotlib数据可视化

一、绘图步骤 1、导入第三方库 import matplotlib.pyplot as plt import numpy as np 2、准备数据 x1 np.linspace(1, 10, 5) y1 np.sin(x1) 3、开始绘图 plt.plot(x1, y1, linewidth3) 4、完善图表 plt.title("plot figure") plt.xlabel("value of x&qu…

java日志log4j使用

1、导入jar包 log4j-1.2.17.jar log4j-api-2.0-rc1.jar log4j-core-2.0-rc1.jar https://download.csdn.net/download/weixin_44201223/89148839 所需jar包下载地址 2、创建 log4j.properties src 下创建 log4j.properties (路径和名称都不允许改变)&#xff0c;放置 src 下…

springboot源码(二):自动装配原理

springboot源码(二)&#xff1a;自动装配原理 ​ 在之前的课程中我们讲解了springboot的启动过程&#xff0c;其实在面试过程中问的最多的可能是自动装配的原理&#xff0c;而自动装配是在启动过程中完成&#xff0c;只不过在刚开始的时候我们选择性的跳过了&#xff0c;下面详…

WPF App.xaml 中添加多个ResourceDictionary

在WPF应用程序中&#xff0c;App.xaml 文件是一个常用的集中位置来管理应用级别的资源&#xff0c;包括样式、模板、图像、数据转换器等。为了添加多个 ResourceDictionary 到 App.xaml 中&#xff0c;可以利用 ResourceDictionary 的 MergedDictionaries 属性。这个属性允许您…

百分比padding---------实现图片固定比例并自适应布局 以及aspect-ratio属性、cqw单位

一、百分百padding 在文档流中css的margin和padding这两个属性垂直方向的百分百值都是基于宽度计算的&#xff0c;这个也是本次布局方式的核心。 这个方案优势&#xff1a;图片自适应同时保持比例&#xff0c;以及页面刷新的时候没有布局稳固不晃动 这种方式应用场景就是&am…

OpenHarmony、HarmonyOS和Harmony NEXT 《我们不一样》

1. OpenHarmony 定义与地位&#xff1a;OpenHarmony是鸿蒙系统的底层内核系统&#xff0c;集成了Linux内核和LiteOS&#xff0c;为各种设备提供统一的操作系统解决方案。 开源与商用&#xff1a;OpenHarmony是一个开源项目&#xff0c;允许开发者自由访问和使用其源代码&#…

【Leetcode每日一题】 递归 - 二叉树的所有路径(难度⭐)(59)

1. 题目解析 题目链接&#xff1a;257. 二叉树的所有路径 这个问题的理解其实相当简单&#xff0c;只需看一下示例&#xff0c;基本就能明白其含义了。 2.算法原理 针对二叉树路径的求解问题&#xff0c;我们可以采用深度优先遍历&#xff08;DFS&#xff09;的策略来寻找所…