杭电oj(1008、1012、1013、1014、1017)题解
目录
编辑
1008
题目
思路
代码
1012
题目
思路
代码
1013
题目
思路
代码
1014
题目
思路
代码
1017
题目
思路
处理每组测试数据
计算满足条件的整数对数量
代码
1008
题目
思路
s = a[0];
:初始化s
为数组的第一个元素,即电梯从第 0 层上升到第一个楼层的高度。for(int i = 0; i < n - 1; i++)
:遍历数组,比较相邻两个楼层的高度。
if(a[i] > a[i + 1])
:如果当前楼层高于下一个楼层,说明电梯在下降,将下降的高度a[i] - a[i + 1]
累加到x
中。else
:如果当前楼层低于下一个楼层,说明电梯在上升,将上升的高度a[i + 1] - a[i]
累加到s
中。
- 总时间的计算规则如下:
n * 5
:表示电梯在n
个楼层停留的总时间,因为每层停留 5 秒。s * 6
:表示电梯上升的总时间,因为电梯上升每层需要 6 秒。x * 4
:表示电梯下降的总时间,因为电梯下降每层需要 4 秒。- 将这三部分时间相加,得到电梯运行的总时间,并输出结果。
代码
#include<iostream>
using namespace std;
int a[100000];
int main(){int n;while(cin>>n&&n){int s=0;int x=0;for(int i=0;i<n;i++){cin>>a[i];}s=a[0];for(int i=0;i<n-1;i++){if(a[i]>a[i+1]){x+=a[i]-a[i+1];}else{s+=a[i+1]-a[i];}}cout<<n*5+s*6+x*4<<endl;} return 0;
}
1012
题目
思路
- 外层
for
循环从 \(i = 4\) 到 \(i = 9\),表示计算泰勒级数展开式前 5 项到前 10 项的和。- 内层
for
循环从 \(j = 0\) 到 \(j = i\),计算每一项 \(\frac{1}{j!}\) 并累加到sum
中。- 每次外层循环结束后,将
sum
的值存储到数组a
的相应位置。
代码
#include<iostream>
using namespace std;
double a[10]={1,2,2.5,2.666666667,2.708333333};
double jc(int n){if(n<=1) return 1;double sum=1.0;for(int i=1;i<=n;i++){sum*=i;}return sum;
}
int main(){for(int i=4;i<=9;i++){double sum=0;for(int j=0;j<=i;j++){sum+=1/jc(j);}a[i]=sum;}cout<<"n e"<<endl<<"- -----------"<<endl;for(int i=0;i<10;i++){if(i>2) printf("%d %.9lf\n",i,a[i]);else cout<<i<<" "<<a[i]<<endl;}return 0;
}
1013
题目
思路
string s;
:定义一个字符串变量s
,用于存储输入的字符串。while(getline(cin,s)&&s!="0")
:使用getline
函数从标准输入读取一行字符串,只要读取的字符串不为"0"
,就继续处理。a = 0;
:每次处理新的输入时,将全局变量a
初始化为 0。for(int i = 0; i < s.size(); i++){ a += s[i] - '0'; }
:遍历输入字符串s
的每个字符,将字符转换为对应的数字(通过减去字符'0'
的 ASCII 码值)并累加到a
中,得到输入数字的各位数字之和。while(a > 10){ swh(a); }
:如果a
大于 10,说明还需要继续计算各位数字之和,调用swh
函数对a
进行处理,直到a
小于等于 10。if(a == 10) a = 1;
:若最终的a
等于 10,将其修正为 1,因为数字根必须是一位数。cout << a << endl;
:输出最终的数字根。注:要考虑大数
代码
#include<iostream>
#include<string>
using namespace std;
int a;
void swh(int num){int sum=0;while(num>0){sum+=num%10;num/=10;}a=sum;
}
int main(){string s;while(getline(cin,s)&&s!="0"){a=0;for(int i=0;i<s.size();i++){//cout<<a<<endl;a+=s[i]-'0';}while(a>10){swh(a);}if(a==10) a=1;cout<<a<<endl;}return 0;
}
//1013 //没有考虑数据过大
//#include<iostream>
//using namespace std;
//int a;
//void swh(int num){
// int sum=0;
// while(num>0){
// sum+=num%10;
// num/=10;
// }
// a=sum;
//}
//int main(){
// int n;
// while(cin>>n&&n){
// swh(n);
// while(a>9){
// swh(a);
// }
// cout<<a<<endl;
// }
// return 0;
//}
1014
题目
思路
int x, y;
:定义两个long long
类型的变量x
和y
,用于存储用户输入的整数对。while(cin>>x>>y)
:使用while
循环持续读取用户输入的整数对,只要输入有效,就会继续处理。if ( gcd(x, y) == 1)
:调用gcd
函数计算x
和y
的最大公约数,若结果为 1,表明这两个整数互质。
- 若互质,使用
setw(10)
设置输出宽度为 10 个字符,依次输出x
和y
,然后输出" Good Choice"
,并换行两次。else
:若最大公约数不为 1,同样使用setw(10)
设置输出宽度,输出x
和y
,接着输出" Bad Choice"
,并换行两次。
代码
#include<iostream>
#include <iomanip>
#include <sstream>
using namespace std;
#define int long long
int gcd(int a,int b){return b==0?a:gcd(b,a%b);
}
signed main(){int x,y;while(cin>>x>>y){if ( gcd(x, y) == 1) {cout << setw(10) << x << setw(10) << y;cout << " Good Choice" << endl << endl;} else {cout << setw(10) << x << setw(10) << y;cout << " Bad Choice" << endl << endl;}}return 0;
}
1017
题目
思路
处理每组测试数据
while(t--)
:使用while
循环处理t
组测试数据,每次循环t
的值减 1。int n, m;
:定义两个整数变量n
和m
,用于存储输入的整数对。int k = 1;
:定义一个整数变量k
,用于记录当前测试用例的编号,初始值为 1。while(cin>>n>>m)
:使用while
循环不断读取整数对(n, m)
,直到遇到n
和m
都为 0 的情况。if(n==0 && m==0) break;
:如果输入的n
和m
都为 0,则跳出内层while
循环,结束当前组测试数据的处理。if(t) cout<<endl;
:如果还有剩余的测试数据(即t
不为 0),则输出一个空行,用于分隔不同组的测试数据。计算满足条件的整数对数量
int count = 0;
:定义一个整数变量count
,用于记录满足条件的整数对数量,初始值为 0。for(int i = 1; i < n; i++)
:外层循环遍历i
从 1 到n - 1
。for(int j = i + 1; j < n; j++)
:内层循环遍历j
从i + 1
到n - 1
,确保j > i
。double x = 1.0 * (i * i + j * j + m) / (i * j);
:计算(i² + j² + m) / (i * j)
的值,并将结果存储在x
中。if(x == (int)x)
:判断x
是否为整数,如果是整数,则count
加 1。
代码
#include<iostream>
using namespace std;
int main(){int t;cin>>t;while(t--){int n,m;int k=1;while(cin>>n>>m){if(n==0 && m==0) break;int count=0;for(int i=1;i<n;i++){for(int j=i+1;j<n;j++){double x=1.0*(i*i+j*j+m)/(i*j);if(x==(int)x){count++; }}}printf("Case %d: %d\n",k++,count);}if(t) cout<<endl;}return 0;
}
相关文章:
杭电oj(1008、1012、1013、1014、1017)题解
目录 编辑 1008 题目 思路 代码 1012 题目 思路 代码 1013 题目 思路 代码 1014 题目 思路 代码 1017 题目 思路 处理每组测试数据 计算满足条件的整数对数量 代码 1008 题目 思路 s a[0];:初始化 s 为数组的第一个元素,即电…...
VRRP与BFD在冗余设计中的核心区别:从“备用网关”到“毫秒级故障检测”
(本文完全由deepseek生成,特此声明) 在网络冗余设计中,VRRP(Virtual Router Redundancy Protocol)和BFD(Bidirectional Forwarding Detection)是两种关键协议,但它们的定…...
蓝桥杯 2. 确定字符串是否是另一个的排列
确定字符串是否是另一个的排列 原题目链接 题目描述 实现一个算法来识别一个字符串 str2 是否是另一个字符串 str1 的排列。 排列的解释如下:如果将 str1 的字符拆分开,重新排列后再拼接起来,能够得到 str2,那么就说字符串 st…...
巧记英语四级单词 Unit6-上【晓艳老师版】
master n.雇主,主人 发音“骂死他”,骂死谁?雇主,主人masterpiece n.代表作,名著 主人的作品就是名著deputy n.副手 de表示往下,put放,往下放给副手appeal n.要求,呼吁 一再的要求剥…...
Java求职面试:从Spring Boot到微服务架构的全面解析
场景:互联网大厂Java面试 在某互联网大厂的面试房间里,面试官李老师正准备面试一位传说中的“水货程序员”——谢飞机。 第一轮提问:基础框架与工具 李老师: “谢飞机,你好。我们先聊聊Spring Boot吧。你能简单说说…...
来自B站AIGC科技官的“vLLM简介“视频截图
来自B站AIGC科技官的"vLLM简介"视频截图 0. 引言1. vLLM简介2. vLLM启动日志解析3. vLLM压力测试4.vLLM分布式推理 0. 引言 这篇文章主要记录了B站AIGC科技官的"vLLM简介"视频截图。 1. vLLM简介 笔记 From Up主: KV Cache的大小与序列长度的…...
CSS元素动画篇:基于当前位置的变换动画(四)
基于当前位置的变换动画(四) 前言透明效果类元素动画闪烁动画效果效果预览代码实现 淡入动画效果效果预览代码实现 淡出动画效果效果预览代码实现 结语 前言 CSS元素动画一般分为两种:一种是元素基于当前位置的变换动画,通过不明…...
如何打包一个QT 程序
如何打包一个QT 程序 找到 vcvarsall.bat 文件 打开 图中框选的命令行 输入命令 D:\MicrosoftVisualStdio2022\Community\VC\Auxiliary\Build\vcvarsall.bat x64命令行进入待打包的目录,只留下一个exe 文件即可 windeployqt 程序名打包完成...
【vLLM 学习】CPU 离线处理
vLLM 是一款专为大语言模型推理加速而设计的框架,实现了 KV 缓存内存几乎零浪费,解决了内存管理瓶颈问题。 更多 vLLM 中文文档及教程可访问 →https://vllm.hyper.ai/ 源代码:vllm-project/vllm from vllm import LLM, SamplingParams# S…...
德州仪器(TI)—TDA4VM芯片详解—目录
写在前面 本系列文章主要讲解德州仪器(TI)TDA4VM芯片的相关知识,希望能帮助更多的同学认识和了解德州仪器(TI)TDA4VM芯片。 若有相关问题,欢迎评论沟通,共同进步。(*^▽^*) 本篇是此系列的目录…...
深入解读:2025 数字化转型管理 参考架构
《GB/T 45341—2025 数字化转型管理 参考架构》规定了数字化转型参考架构,涵盖主要视角、过程方法、发展阶段与水平档次。主要视角包含发展战略、业务创新转型等 5 个方面,明确任务及关联; 过程方法基于 “策划 — 支持、实施与运行 — 评测 …...
dma_buf学习记录之二核心接口
dma_buf学习记录之一基础知识-CSDN博客 本章学习linux\include\linux\dma-buf.h dma-buf.h 是 Linux 内核中用于实现 DMA 缓冲区共享框架的核心头文件。它定义了 dma-buf 子系统的主要数据结构和操作接口,允许设备驱动程序之间共享缓冲区,并支持异步硬件…...
java Optional
我还没用过java8的一些语法,有点老古董了,记录下Optional怎么用。 从源码看,Optional内部持有一个对象, 有一些api对这个对象进行判空处理。 静态方法of ,生成Optional对象, 但这个value不能为空&#…...
一文说清Token这个大模型中的数字乐高积木的作用
第一章:语言解码的底层逻辑 1.1 人类大脑的"偷懒智慧" 想象你走在街头,突然看到"星巴克"的招牌。你的大脑不会逐个分析"星""巴""克"三个字的笔画,而是瞬间将其识别为一个整体。这种将高…...
界面打印和重定向同时实现
在 Shell 中,若要让程序运行时既在界面打印输出内容,又将其重定向到文件,可使用tee命令达成此目的。tee命令的作用是从标准输入读取数据,然后将这些数据同时输出到标准输出(也就是屏幕)和指定的文件中。 基…...
最佳实践-HENGSHI SENSE 可视化创作中如何引入数据集市的成果
HENGSHI SENSE 提供了 中心化的数据集市管理 ,即数据集市的功能: 数据集市,支持层级结构的数据集市建立,按用户,用户组,组织架构授权,将数据分配到合适的人。支持统一的计算字段,计算…...
YOLO旋转检测模型简化
YOLO模型作为单阶段目标检测方法的代表,其已经应用在多个领域。 但要想将其部署到单片机上,其模型的大小需要受到极大的限制,而采用剪枝的方式模型体积下降效果有限,因此我们直接修改网络结构,将其进行删减,…...
JavaScript之Webpack的模块加载机制
目录 目标 概述 IIFE语法分析 无参数的IIFE 有参数的IIFE Webpack语法分析 基本结构 缓存加载过的模块 ES5的格式 ES6的格式 目标 本文站在js逆向的角度总结知识,所以不讲解Webpack打包技术,只分析模块加载机制。 概述 Webpack Webpack是一个…...
深度解析如何将图像帧和音频片段特征高效存储到向量数据库 Milvus
在视频和音频分析领域,如何高效地处理和检索海量的多模态数据一直是一个重大挑战。本文将深度解析一种行之有效的解决方案:利用 OpenCV 和音频处理库提取数据特征后,将这些特征向量存储到 Milvus 向量数据库,以实现高效的相似性检…...
《Vue3学习手记6》
组件通信 props props 可以父传子,也可以子传父 1.父传子 子组件: <template><div class"child"><h2>子组件</h2><h3>礼物:{{ gift }}</h3><h3 v-show"zichan">父亲给我的…...
抗体品牌推荐
默克超级英雄抗体的披荆斩棘之路 自保罗埃尔利希1891年10月提出“Antikrper”一词后,科研人逐渐意识到抗体(Antibody)可以应用于各种类型的研究中。 从结构、功能、人体免疫应答……到基因治疗、药物研究,抗体的身影无处不在。值…...
生成式人工智能认证(GAI认证)有什么用?
在人工智能的浪潮中,我们正站在一个前所未有的十字路口。有人将生成式人工智能(Generative AI)视为技术迭代的工具,有人将其视为颠覆行业的“黑匣子”,而更少有人意识到:它正在重新定义人类与技术的共生关系。当AI不再局限于辅助人类,而是开始参与创作、决策甚至伦理判断…...
全新升级:BRAV-7601-T003高性能无风扇AI边缘计算系统,助力智能未来!
在数字化与智能化飞速发展的今天,AI边缘计算正成为各行各业的核心驱动力。BRAV-7601作为一款高性能无风扇AI边缘计算系统,凭借其强大的硬件配置与丰富的扩展能力,为车路协同、特种车辆车载、机器视觉、医疗影像等领域提供了卓越的解决方案。最…...
基于c++的LCA倍增法实现
原理就不写了,自己找b站视频学习 #include <iostream> #include <vector> #include <cmath> #include <algorithm> using namespace std; const int MAXN 100005; // 最大节点数 const int MAXLOG 20; // 最大对数深度 vector<…...
探索大语言模型(LLM):语言模型从海量文本中无师自通
文章目录 引言:当语言模型学会“自己教自己”一、自监督学习:从“无标签”中挖掘“有监督”信号二、语言模型的自监督训练范式:两大经典路径1. 掩码语言模型(Masked Language Modeling, MLM)——以BERT为例2. 自回归语…...
大语言模型 - 运行、微调的显存计算详解与优化 全量微调、LoRA 优化策略
写在前面 随着Transformer架构的大语言模型(LLM)不断发展,其参数规模也在迅速增加。无论是进行模型推理还是微调训练,GPU显存消耗都是开发和应用LLM时的重要考量。本文将详细探讨大模型运行(推理)与微调时…...
【音视频】视频解码实战
FFmpeg流程 从本地读取YUV数据编码为h264格式的数据,然后再存⼊到本地,编码后的数据有带startcode与FFmpeg 示例⾳频编码的流程基本⼀致。 函数说明 avcodec_find_encoder_by_name:根据指定的编码器名称查找注册的编码器。avcodec_alloc_co…...
计算机网络学习笔记 4-6章
第 4 章 网络层 【考纲内容】 (一)网络层的功能 异构网络互连;路由与转发;SDN 基本概念;拥塞控制 (二)路由算法 静态路由与动态路由;距离 - 向量路由算法࿱…...
游戏哪些接口会暴露源IP?_深度解析服务器通信安全隐患
一、用户认证体系中的IP泄露陷阱 在游戏登录验证环节,采用明文传输的HTTP协议接口会将客户端IP直接暴露在TCP握手阶段。某头部MOBA游戏曾因使用HTTP Basic认证方式,导致黑客通过抓取三次握手数据包获取服务器真实IP。游戏行业权威测试显示,使…...
树莓派学习专题<11>:使用V4L2驱动获取摄像头数据--启动/停止数据流,数据捕获,缓存释放
树莓派学习专题<11>:使用V4L2驱动获取摄像头数据--启动/停止数据流,数据捕获,缓存释放 1. 启动和停止数据流2. 捕获数据3. 释放缓存 1. 启动和停止数据流 使用命令 VIDIOC_STREAMON 启动摄像头数据流,使用…...
adb push 报错:CreateProcess failure, error 123
客户使用adb push 可执行程序的时候报错如下所示 原因:文件目录里边带中文导致 解决方法:将文件目录里中文改成英文就好了...
【实战篇】数字化打印——打印格式设计器的功能说明
前言 myBuilder内置了覆盖丰富场景的打印格式设计器,效果统一,功能完善。 设计器一:小票 用于设计小票、水单等滚筒纸张的场景,例如:超市购物小票 主要功能 打印格式的保存、下载、上传设计时功能:撤销…...
【数据挖掘】时间序列预测-时间序列预测策略
时间序列预测策略 (1)单步预测与多步预测(2)直接多步预测(3)递归多步预测(4)直接递归的混合预测(5)多输入多输出预测 (1)单步预测与多…...
京东商品详情数据爬取难度分析与解决方案
在当今数字化商业时代,电商数据对于市场分析、竞品研究、价格监控等诸多领域有着不可估量的价值。京东,作为国内首屈一指的电商巨头,其商品详情页蕴含着海量且极具价值的数据,涵盖商品价格、库存、规格、用户评价等关键信息。然而…...
【Linux】线程
一.线程概念 我们在学习进程的时候已经知道了,进程内核数据结构pcb自己的代码和数据。那么单单一个task_struct是什么呢? 我们将单个的task_struct叫做轻量级进程,而这个轻量级进程也叫做线程。以往我们在了解进程的时候,一个进…...
WPF-遵循MVVM框架创建图表的显示【保姆级】
文章速览 1、技术栈实现步骤1、创建WPF工程项目2、引入框架 Caliburn.Micro、数据可视化库ScottPlot.WPF3、创建文件夹,并创建相应的View & ViewModel4、创建启动类5、将启动类设置为启动项6、编写View7、编写VM8、将VM和View中的图表进行绑定9、备注 示例效果 …...
深入详解人工智能数学基础—概率论-KL散度在变分自编码器(VAE)中的应用
🧑 博主简介:CSDN博客专家、CSDN平台优质创作者,高级开发工程师,数学专业,10年以上C/C++, C#, Java等多种编程语言开发经验,拥有高级工程师证书;擅长C/C++、C#等开发语言,熟悉Java常用开发技术,能熟练应用常用数据库SQL server,Oracle,mysql,postgresql等进行开发应用…...
《代码整洁之道》第9章 单元测试 - 笔记
测试驱动开发 (TDD) 是一种编写整洁代码的“规程”或“方法论”,而不仅仅是测试技术。 JaCoCo 在运行测试后生成详细的覆盖率报告的工具, maven 引用。 测试驱动开发 测试驱动开发(TDD)是什么? TDD 不是说写完代码…...
每日c/c++题 备战蓝桥杯(P2392 kkksc03考前临时抱佛脚)
【题解】期末考试抱佛脚最短时间(动态规划 | 二进制背包) 题目链接 题目背景 kkksc03 的大学生活非常颓废,临近期末考试才开始疯狂复习。他有 4 门科目需要复习,每一科都有若干道题目,每道题目需要一定的时间完成。…...
徽客松S1 | 合肥首场 AI 黑客松招募
越来越多的黑客松在各个城市出现!5 月 10 日,合肥,12 小时极速挑战。 我们和本次「徽客松」发起人 SDL 也是在一个黑客松上相识。当你的城市还没有黑客松可参加,与其等待,不如学习 SDL,自己发起一个&#…...
单片机-89C51部分:6、按键
飞书文档https://x509p6c8to.feishu.cn/wiki/EtkHw8MG0ipz3NkHlZEcwpEnn4g 一、应用场景: 轻触开关、按键、电容开关、光栅传感器、微动、关电开关 二、原理: 轻触按键可以理解为两根导线,按下时导线连接,松开时导线断开。我们可…...
小结: DHCP
交换机的物理接口分批地址池、全局分配地址池 分批地址池(接口地址池/局部分配) 按物理接口(如 VLAN 接口、SVI、物理端口)划分,每个接口单独配置一个小型地址池。适合规模较小、子网划分清晰的场景。配置方法示例&…...
matlab simulink中理想变压激磁电流容易有直流偏置的原因分析。
simulink把线性变压器模块拉出来,设置没有绕线电阻的变压器,激磁电感和Rm都有,然后给一个50%占空比的方波,幅值正负10V,线路中设置一个电阻,模拟导线阻抗。通过示波器观察激磁电流,发现电阻越小…...
国产三维CAD皇冠CAD在「通用设备制造业」建模教程:台式起重机
在制造业数字化转型的浪潮中,三维CAD软件已成为装备设计的核心工具,而国产软件的崛起正悄然改变行业格局。皇冠CAD(CrownCAD)作为中国自主研发的云端三维CAD平台,凭借全栈可控的底层架构、高效协同的设计流程及复杂场景…...
Day 12
文件操作 文件文件操作文件函数课堂笔记 文件 1)概述 FILE 所有平台的名字都一样,FILE 是一个结构体类型,里面的成员功能一样,不同平台成员的名字不一样。 FILE *fp 1、fp指针,只用调用了fopen().在堆区分配空间,把地址返回给fp 2、fp指针…...
Lua 第11部分 小插曲:出现频率最高的单词
在本章中,我们要开发一个读取并输出一段文本中出现频率最高的单词的程序。像之前的小插曲一样,本章的程序也十分简单但是也使用了诸如迭代器和匿名函数这样的高级特性。 该程序的主要数据结构是一个记录文本中出现的每一个单词及其出现次数之间关系的表。…...
自然语言处理之机器翻译:注意力机制在低资源翻译中的突破与哲思
## 被忽视的7000种语言 在人工智能翻译技术突飞猛进的今天,一个残酷的事实被刻意掩盖:全球7000种语言中,超过95%缺乏构建现代机器翻译系统所需的基础资源。当我们在庆贺Transformer模型将英德翻译BLEU值推高至40%时,那些承载着人类文明基因的少数民族语言,正在经历着前所未…...
SQL 处理重复数据之技巧(Techniques for Handling Duplicate Data with SQL)
SQL 处理重复数据之技巧 ❝ 在日常数据库操作中,我们经常会遇到重复数据的问题。重复数据不仅会占用存储空间,还可能导致数据分析结果不准确。本文将详细讲解 SQL 中处理重复数据的常用方法,帮助你更高效地管理数据库中的数据。 一、为什么会…...
Redis01-基础-入门
零、文章目录 Redis01-基础-入门 1、认识 NoSQL NoSQL 知识请参考:https://blog.csdn.net/liyou123456789/article/details/132612444 2、认识 Redis (1)简介 Redis(Remote Dictionary Server,远程字典服务&…...
辞九门回忆
2025年月日,13~30℃,挺好的 待办: 《高等数学2》期末试卷 高数重修电子版材料 冶金《物理》期末试卷 《物理[2]》期末试卷 批阅冶金《物理》作业→→统计平时成绩 遇见:遇见一位小姐姐。 感受或反思:不主动推动关系&a…...