洛谷练习(8.4/8.5)
题目
- P2036 PERKET
- 题目描述
- 思路
- 代码
- P3799 小 Y 拼木棒
- 题目描述
- 思路
- 代码
- P1010 幂次方
- 题目描述
- 思路
- 代码
- P1498 南蛮图腾
- 题目描述
- 思路
- 代码
- P1928 外星密码
- 题目描述
- 思路
- 代码
P2036 PERKET
题目描述
比较苦度和酸度的最小差值
思路
搜索最小差值
代码
void dfs(int sd,int kd,int cnt)
{if(cnt==n){int sum=abs(sd-kd);if(sum<summ&&kd!=0) summ=sum;//定义summ为一个特别大的数不断更新return ;}cnt++;dfs(sd*s[cnt],kd+b[cnt],cnt);//加上这个数dfs(sd,kd,cnt);//不加当前数
}
signed main()
{long long suma=1,sumb=0,sum=0;cin>>n;for(int i=1;i<=n;i++){cin>>s[i]>>b[i];dfs(1,0,0);} cout<<summ;return 0;
}
P3799 小 Y 拼木棒
题目描述
选取4根木棒摆成正三角形
思路
计算不同长度木棍的数量,排列组合
代码
int main()
{long long n,count[50000]={0},a,sum=0,ans=0;cin >> n;for (int i = 1; i <= n; i++){cin >> a;count[a]++;//计数} for (int i = 1; i <= 2500; i++) //因为最大值5000,因为两个数相加所以不超2500for (int j = i ; j <= 5000-i; j++){int c1=count[i];int c2=count[j];//两种短棍的数量int c3=count[i+j];//长棍的数量if(c3>=2){if(i==j&&c1>=2)//正好i等于j{sum=c1*(c1-1)/2*c3*(c3-1)/2%1000000007;//就是从c1个数中选两个,再从c3个数中选两个ans+=sum;}if(i!=j&&c1>=1&&c2>=1){sum=c1*c2*c3*(c3-1)/2%1000000007;//从c1,c2中各选一个,在c3中选两个ans+=sum;}}} cout << ans%1000000007;//数值太大要取模return 0;
}
P1010 幂次方
题目描述
把一个数用全是2或者0,表示出来
思路
递归/分治,先减去距离这个数最近的2的i的数,逐层递减
代码
void solve(int x)
{ for(int i=14;i>=0;i--)if(pow(2,i)<=x){if(i==1) cout<<"2";else if(i==0) cout<<"2(0)";else{cout<<"2(";solve(i);cout<<")"; } x-=pow(2,i);if(x!=0) cout<<"+";}
}
P1498 南蛮图腾
题目描述
画三角形的图腾
思路
分治,就是对三角形的复制移动(代码注释会详细一点)
代码
char a[2050][2050];
void sol(int x,int y,int n)//x表示纵向,y表示横向
{int ds=pow(2,n);//偏移距离if(n==1){a[x][y+1]='/';a[x+1][y]='/';a[x][y+2]='\\';a[x+1][y+3]='\\';a[x+1][y+1]='_';a[x+1][y+2]='_';//就是一个三角形的return ;}//下面是对,n为2 的时候有三个小三角形的,与一个三角形的位置移动对比sol(x,y+ds/2,n-1);//第一个sol(x+ds/2,y,n-1);//第二个sol(x+ds/2,y+ds,n-1);//第三个
}
int main()
{int n;cin>>n;int ds=pow(2,n);memset(a,' ',sizeof(a));sol(0,0,n);for(int i=0;i<ds;i++){for(int j=0;j<ds*2;j++)//因为横向距离是纵向的2倍cout<<a[i][j];cout<<'\n';}return 0;
}
P1928 外星密码
题目描述
就是把折叠的字符串展开
思路
递归,遇到’['后面数字是几就循环接到后面几次,遇到‘]’
返回
代码
string unfold() //定义string类型,便于直接接后面
{ int n;string s="",sj;char c;while(cin>>c){if(c=='['){cin>>n;sj=unfold();while(n--)s+=sj;把需要展开的接后面}else{if(c==']') return s;else s+=c;} } return s;
}
int main()
{cout<<unfold();return 0;
}
相关文章:
洛谷练习(8.4/8.5)
题目 P2036 PERKET题目描述思路代码 P3799 小 Y 拼木棒题目描述思路代码 P1010 幂次方题目描述思路代码 P1498 南蛮图腾题目描述思路代码 P1928 外星密码题目描述思路代码 P2036 PERKET 题目描述 比较苦度和酸度的最小差值 思路 搜索最小差值 代码 void dfs(int sd,int k…...
DLMS/COSEM中的信息安全:加密算法(下)1
4.公钥算法 4.1概述 一般来说,公钥密码系统使用难以解决的问题作为算法的基础。RSA算法基于非常大的整数的素因子分解。椭圆曲线密码学(ECC)是基于求解椭圆曲线离散对数问题(ECDLP)的难度。与RSA相比,ECC提供了相似的安全级别,但密钥大小明显减少。ECC特别适用于嵌入式…...
ES6中的Promise、async、await,超详细讲解!
Promise是es6引入的异步编程新解决方案,Promise实例和原型上有reject、resolve、all、then、catch、finally等多个方法,语法上promise就是一个构造函数,用来封装异步操作并可以获取其成功或失败的结果,本篇文章主要介绍了ES6中的P…...
Modbus poll和Modbus Mbslave的使用
读取Modbus Mbslave中的数据 首先创建COM1和COM2端口 然后 using System.IO.Ports; namespace 通信 {internal class Program{static void Main(string[] args){Console.WriteLine("Hello, World!");SerialPort serialPort new SerialPort("COM1",960…...
树莓集团的全球化征程:数字媒体产业的本土与国际布局
在全球数字化转型的浪潮中,树莓集团正稳步推进数字媒体产业从本土到国际的全球化布局。在数字媒体产业这一新兴且充满活力的领域中,树莓集团不仅在国内市场树立了标杆,更以其独特的全球化战略布局,引领着行业的未来趋势。 本土深耕…...
LeetCode面试150——274H指数
题目难度:中等 默认优化目标:最小化平均时间复杂度。 Python默认为Python3。 目录 1 题目描述 2 题目解析 3 算法原理及代码实现 3.1 排序 3.2 排序时间优化(计数排序) 3.3 二分查找 参考文献 1 题目描述 给你一个整数数组 citations …...
【Linux】Linux重定向指南:探索输出重定向与追加重定向的奥秘!
欢迎来到 CILMY23 的博客 🏆本篇主题为:Linux重定向指南:探索输出重定向与追加重定向的奥秘! 🏆个人主页:CILMY23-CSDN博客 🏆系列专栏:Python | C | C语言 | 数据结构与算法 | 贪…...
Spring AI -快速开发ChatGPT应用
Spring AI介绍 Spring AI是AI工程师的一个应用框架,它提供了一个友好的API和开发AI应用的抽象,旨在简化AI应用的开发工序,例如开发一款基于ChatGPT的对话、图片、音频等应用程序。 Spring AI已经集成了OpenAI的API,因此我们不需…...
Modern C++ 智能指针
Why? 原始指针存在缺陷,不符合现代编程语言的需要。 原始指针的缺陷: 指针指向一片内存,使用者无法得知到底是指向了什么,是数组还是对象?使用完指针是否需要销毁?什么时候销毁?如…...
Python的100道经典练习题,每日一练,必成大神!!!
Python的100道经典练习题是一个广泛而深入的学习资源,可以帮助Python初学者和进阶者巩固和提升编程技能 完整的100多道练习题可在下面图片免沸获取哦~ 整理了100道Python的题目,如果你是一位初学者,这一百多道题可以 帮助你轻松的使用Python…...
代码回滚命令
定位到当前分支 git branch回滚到指定的commit git reset --hard 85da0cb8322accad143cpush到远程分支 git push --force...
[ASIS 2019]Unicorn shop1
打开题目 随便输入信息看一下 操作失败,只让输入一个字符 不妨抓包看一下,信息,发现 从中可以发现源代码是如何处理price的 使用的是unicodedata.numeric() 但我们查看页面源码时,看到源码处理方式是utf-8 所以,前…...
LangChain与泛型编程:探索代码生成的新维度
LangChain与泛型编程:探索代码生成的新维度 在软件开发领域,泛型编程是一种允许创建可重用组件的技术,这些组件可以在多种数据类型上工作的编程范式。LangChain作为一个假设的编程辅助工具,如果存在,它可能会支持泛型…...
day25
一、进程间通信(IPC) 1.1 进程间通信的引入 1> 对于多个线程之间通信,我们可以使用临界资源来完成,通过一个线程任务对临界资源进行修改,另一个线程也可以使用已经修改过的临界资源,但是要注意使用…...
红黑树的概念和模拟实现[C++]
文章目录 红黑树的概念一、红黑树的性质红黑树原理二、红黑树的优势和比较 红黑树的模拟实现构建红黑树的数据结构定义节点的基本结构和初始化方式插入新节点插入新节点的颜色调整颜色和结构以满足红黑树性质 红黑树的应用场景 红黑树的概念 一、红黑树的性质 红黑树是一种自平…...
网络安全应急响应概述
前言 在网络安全领域,有一句广为人知的话:“没有绝对的安全”。这意味着任何系统都有可能被攻破。安全攻击的发生并不可怕,可怕的是从头到尾都毫无察觉。当系统遭遇攻击时,企业的安全人员需要立即进行应急响应,以将影响…...
【C++】链表操作技巧综合:重排链表(带你理顺链表的做题思路)
1.题目 2.算法思路 这是一道关于链表的综合题,一共涉及到三个步骤,其中每个步骤单拎出来就可以当一道单独的题目。所以需要大家对链表的操作十分熟悉,否则可能需要大量的时间做这道题目,而且还要很多的bug。 第一个步骤…...
行为型设计模式2:观察者/职责链/中介者/访问者
设计模式:观察者/职责链/中介者/访问者 (qq.com)...
叛逆,批判
1、对以往说法的批判之一(第一次这么公开批判是2004-2005年): 这部英文版的《数学百科全书》似乎是从俄语版翻译过来的?我查了三本引用的图书文献,都没有关于“nonsingular”和“singular”的类似下面的说法ÿ…...
Linux 命令,mkdir说明与使用
1:mkdir命令功用: 用于创建一个或多个目录,创建目录,必须在父目录中写上权限。 新目录的默认模式为0777,可以由系统或用的umask来修改。 2:命令构件: mkdir [options] directories 3:参数选项: -m&#x…...
【数据库基础】正则化(Normalization)P1:从UNF到3NF的渐进式优化指南
1. 为什么需要数据库正则化? 第一次设计数据库表结构时,很多人会犯一个典型错误——把所有数据都塞进一个大表里。比如做一个租房管理系统,可能会设计包含客户信息、房源信息、租赁记录、业主信息的大杂烩表格。这种设计短期内看似方便&#…...
什么年代了怎么还在用bash啊?现代化shell开箱体验: fish, nu, elvish口
整体排查思路 我们的目标是验证以下三个环节是否正常: 登录成功时:服务器是否正确生成了Session并返回了包含正确 JSESSIONID的Cookie给浏览器。 浏览器端:浏览器是否成功接收并存储了该Cookie。 后续请求:浏览器在执行查询等操作…...
技术垄断调查:大厂生态的封闭与开放
软件测试从业者的专业视角一、技术垄断的“能力栈控制”与测试生态枷锁当前科技巨头通过垂直整合技术栈构建垄断壁垒:基础模型层:封闭AI框架(如Google Gemini、Microsoft Copilot)控制算法入口工具链层:绑定开发-测试-…...
VMware Workstation 17 Pro 环境下 Kali Linux 2025-2026 版本鼠标光标消失问题的研究与解决方案
摘要 本文针对 VMware Workstation 17 Pro 虚拟化平台中运行 Kali Linux 2025-2026 版本时出现的鼠标光标消失及剪贴板共享失效问题,通过系统性的故障排查与兼容性分析,提出了一种基于虚拟机硬件兼容性配置调整与 open-vm-tools-desktop 组件优化的综合…...
思科ITN 7.00 PTSA综合实验通关指南:多版本识别与满分配置解析
1. 思科ITN 7.00 PTSA实验版本差异全解析 第一次接触思科ITN 7.00 PTSA实验的同学,往往会被随机分配的不同实验版本搞得晕头转向。我当年备考时就遇到过这种情况——明明照着同学的满分答案配置,最后却连基础网络连通都做不到。后来才发现,原…...
Midscene.js:用自然语言重新定义跨平台UI自动化测试
Midscene.js:用自然语言重新定义跨平台UI自动化测试 【免费下载链接】midscene AI-powered, vision-driven UI automation for every platform. 项目地址: https://gitcode.com/GitHub_Trending/mid/midscene 想象一下,你只需要用自然语言描述&qu…...
Linux 文本处理三剑客(日志 / 配置分析)
前言 在 Linux 服务器工作中,90% 的问题都要靠看日志、改配置解决。面对动辄几万行的日志文件,手动翻阅效率极低,而 grep、sed、awk 这三个工具,就是 Linux 下处理文本的 “终极三剑客”。掌握它们,你就能实现快速过滤…...
Ubuntu 20.04 + RTX 3050:手把手教你用TensorRT 10.8和C++部署YOLOv11(保姆级避坑指南)
Ubuntu 20.04 RTX 3050:手把手教你用TensorRT 10.8和C部署YOLOv11(保姆级避坑指南) 在计算机视觉领域,YOLO系列模型因其卓越的实时检测性能而广受欢迎。本文将带你从零开始,在Ubuntu 20.04系统上,利用RTX…...
LaserGRBL:5分钟掌握专业激光雕刻软件的核心技巧
LaserGRBL:5分钟掌握专业激光雕刻软件的核心技巧 【免费下载链接】LaserGRBL Laser optimized GUI for GRBL 项目地址: https://gitcode.com/gh_mirrors/la/LaserGRBL LaserGRBL是一款专为激光雕刻机设计的Windows图形界面软件,它基于开源的GRBL控…...
Qt桌面应用集成Edge内核:保姆级WebView2环境配置与NuGet包本地化部署指南
Qt桌面应用集成Edge内核:WebView2环境配置与本地化部署实战 在Windows平台下开发Qt应用时,传统的Qt WebEngine模块虽然功能完备,但存在启动缓慢、内存占用高、编译体积大等问题。许多开发者开始寻求更轻量高效的替代方案,而微软E…...
