【蓝桥杯速成】| 1.暴力解题
1高频考点与暴力解题_哔哩哔哩_bilibili
感谢up主分享,以下内容是学习笔记,以c++为主,部分python
题目一:维纳的年龄
题目内容
美国数学家维纳(N.Wiener)智力早熟,
11岁就上了大学。他曾在1935~1936年应邀来中国清华大学讲学。
一次,他参加某个重要会议,年轻的脸孔引人注目。
于是有人询问他的年龄,
他回答说:“我年龄的立方是个4位数。我年龄的4次方是个6位数。
这10个数字正好包含了从0到9这10个数字,每个都恰好出现1次。”
请编程输出当年维纳的年龄。
解题步骤
利用暴力法枚举得到维纳的年龄,
先对大致范围做一个确定
立方为4位数,一定大于10,
4次方为6位数,一定小于30
所以外层循环为
for(int i=10;i<30;i++){}
再求出年龄的立方和四次方,保险起见用long long
long long cube=(long long)i*i*i;long long forth=(long long)i*i*i*i;
再做检查,进一步缩小范围,以此为内层条件
if(cube>1000 && cube<10000 && forth>100000 && forth<1000000){}
利用自定义函数检查是否包含0~9
可以把立方和四次方转为字符串,再用字符串的sort方法排序,方便挨个检查
这样可以不用字典之类的统计次数啥的,比较简单
bool isunique(long long cube,long long forth){//把两个数字转为字符串并且拼接 string s=to_string(cube)+to_string(forth);//调用字符串函数进行排序,方便检查 sort(s.begin(),s.end());//逐个检查 for(int i=0;i<10;i++){if(s[i]!='0'+i) return false;}return true;
}
如果符合要求在主函数中打印输出,可以再看看是否正确
cout<<i<<" "<<cube<<" "<<forth;
答案
18岁
code
#include<iostream>
#include<string>
#include<algorithm>using namespace std;bool isunique(long long cube,long long forth){//把两个数字转为字符串并且拼接 string s=to_string(cube)+to_string(forth);//调用字符串函数进行排序,方便检查 sort(s.begin(),s.end());//逐个检查 for(int i=0;i<10;i++){if(s[i]!='0'+i) return false;}return true;
}
int main(){//使用暴力枚举//先确定大致范围,立方为4位数,一定大于10,//4次方为6位数,一定小于30for(int i=10;i<30;i++){//求出这该4位数和6位数long long cube=(long long)i*i*i;long long forth=(long long)i*i*i*i;//再做检查 if(cube>1000 && cube<10000 && forth>100000 && forth<1000000){//调用函数检查是否包含0~9 if(isunique(cube,forth))//结果输出再检查一下! cout<<i<<" "<<cube<<" "<<forth;}} return 0;
}
题目二:小明的妹妹
题目内容
小明带两个妹妹参加元宵灯会。
别人问她们多大了,她们调皮地说:“我们俩的年龄之积是年龄之和的6倍”。
小明又补充说:“她们可不是双胞胎,年龄差肯定也不超过8岁啊。”
请你写出:小明的较小的妹妹的年龄。
解题步骤
用两个int型变量表示两人年龄,初定范围1~50岁
int x,y;//x为较小的妹妹
for(x=1;x<100;x++){//给定年龄合适区间
年龄差不超过8岁就从8岁开始倒推
y=x+8;//相差不超过8岁
for(;y>x;y--){
逐个检查年龄之积是年龄之和的6倍
if(x*y==6*(x+y))//年龄之积是年龄之和的6倍cout<<x<<" "<<y;//输出检查
答案
10
code
#include<iostream>
using namespace std;
int main(){int x,y;//x为较小的妹妹 for(x=1;x<50;x++){//给定年龄合适区间 y=x+8;//相差不超过8岁 for(;y>x;y--){if(x*y==6*(x+y))//年龄之积是年龄之和的6倍cout<<x<<" "<<y;//输出检查 }}
}
题目三:制作门牌
题目内容
小蓝要为一条街的住户制作门牌号。
这条街一共有2020 位住户,门牌号从1 到2020 编号。
小蓝制作门牌的方法是先制作0 到9 这几个数字字符,
最后根据需要将字符粘贴到门牌上,
例如门牌1017 需要依次粘贴字符1、0、1、7,即需要1 个字符0,2 个字符1,1 个字符7。
请问要制作所有的1 到2020 号门牌,总共需要多少个字符2?
解题步骤
利用好字符串内置函数解题嘎嘎快
从1开始到2020,把数字转为字符串
for(int i=1;i<2021;i++){string s=to_string(i);
统计2出现次数
count(s.begin(),s.end(),'2');
累计得出结果
int sum;
sum+=count(s.begin(),s.end(),'2');
答案
624
code
#include<iostream>
#include<string>
#include <algorithm>
using namespace std;
int main(){int sum;for(int i=1;i<2021;i++){string s=to_string(i);sum+=count(s.begin(),s.end(),'2');}cout<<sum;return 0;
}
问题四:国庆节是星期日
问题内容
1949年的国庆节(10月1日)是星期六。
今年(2012)的国庆节是星期一。
那么,从建国到现在,有几次国庆节正好是星期日呢?
解题步骤
使用python中的datetime库,可以很方便的解决所有时间问题
设置起始时间和终止时间,以及统计值
a=date(1949,10,1)
b=date(2012,10,1)
cnt=0
循环判断
满足 是10月 是1号 是周日
(注意a.weekday() 返回的整数范围是 0 到 6,分别对应星期一到星期日)
日期增加1
while a<=b:if a.month==10 and a.day==1 and a.weekday()==6:cnt+=1a+=timedelta(1)
输出结果
print(cnt)
答案
9
code
from datetime import *
a=date(1949,10,1)
b=date(2012,10,1)
cnt=0
while a<=b:if a.month==10 and a.day==1 and a.weekday()==6:cnt+=1a+=timedelta(1)
print(cnt)
相关文章:
【蓝桥杯速成】| 1.暴力解题
1高频考点与暴力解题_哔哩哔哩_bilibili 感谢up主分享,以下内容是学习笔记,以c为主,部分python 题目一:维纳的年龄 题目内容 美国数学家维纳(N.Wiener)智力早熟, 11岁就上了大学。他曾在1935~1936年应邀来中国清华大…...
【动态规划篇】1137. 第 N 个泰波那契数
前言: 动态规划问题一般分为五步: 先确定一个状态表示根据状态表示来推导状态方程初始化填表顺序返回值 ①状态表示 先创建一个以为数组,起名为dp,这个一维数组就叫做dp表 把dp表填满,填满后的某个值就是我们想要的结果状态表…...
MySQL事务深度解析:ACID特性、隔离级别与MVCC机制
引言 在数据库系统中,事务是保障数据一致性与完整性的核心机制。MySQL通过ACID特性、多级隔离策略和MVCC(多版本并发控制)实现了高性能与高可靠性的平衡。本文将从底层原理出发,系统解析事务的四大特性、隔离级别的实现逻辑&am…...
网络信息安全专业(710207)网络安全攻防实训室建设方案
一、引言 随着信息技术的飞速发展,网络空间安全已成为国家安全的重要组成部分,对网络信息安全专业人才的需求日益增长。为满足网络信息安全专业(专业代码710207)的教学需求,提升学生在网络安全攻防领域的实践能力&…...
【Linux】:线程池
朋友们、伙计们,我们又见面了,本期来给大家带来线程池相关的知识点,如果看完之后对你有一定的启发,那么请留下你的三连,祝大家心想事成! C 语 言 专 栏:C语言:从入门到精通 数据结构…...
共享内存(System V)——进程通信
个人主页:敲上瘾-CSDN博客 进程通信: 匿名管道:进程池的制作(linux进程间通信,匿名管道... ...)-CSDN博客命名管道:命名管道——进程间通信-CSDN博客 目录 一、共享内存的原理 二、信道的建立 …...
ctfhub-HTTP协议
请求方式 它要我们使用CTF**B Method,其实就是ctfhub方式 我们直接抓包试一试,把GET改成CTFHUB,在发送到repeater 在repeater处点击发送,得到响应 302跳转 点击“give me flag"没有任何变化,我们抓个包试试 我们把它发送到repeater&…...
【TMS570LC4357】之工程创建
备注:具体资料请在官网海淘.TMS570LC4357资料 在线文档Hercules Safety MCU Resource Guide — Hercules Safety MCUs Documentation XDS100 Debug Probe (ti.com) Git https://git.ti.com/git/hercules_examples/hercules_examples.git https://git.ti.com/cgit/h…...
一种改进的Estimation-of-Distribution差分进化算法
为了充分利用差分进化(DE)的强大开发和estimation-of-distribution算法(EDA)的强大探索,提出了一种混合estimation-of-distribution算法的改进差分进化IDE-EDA。首先,提出了一种新的协同进化框架࿰…...
正则表达式(复习)
文章目录 一、[]: 一个字符集合二、{}: 重复次数三、特殊符号四、(): 分组五、python代码示例六、注意 正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个…...
大数据学习(61)-Impala与Hive计算引擎
&&大数据学习&& 🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言📝支持一下博主哦ᾑ…...
洛谷每日1题-------Day18__P1320 压缩技术(续集版)
题目描述 设某汉字由 NN 的 0 和 1 的点阵图案组成。 我们依照以下规则生成压缩码。连续一组数值:从汉字点阵图案的第一行第一个符号开始计算,按书写顺序从左到右,由上至下。第一个数表示连续有几个 0,第二个数表示接下来连续有…...
[数据结构]排序之希尔排序( 缩小增量排序 )
希尔排序法又称缩小增量法。希尔排序法的基本思想是: 先选定一个整数,把待排序文件中所有记录分成个 组,所有距离为的记录分在同一组内,并对每一组内的记录进行排序。然后,取,重复上述分组和排序的工 作。当…...
LORA中 软提示是什么
LORA中 软提示是什么 软提示的原理概述 软提示(Soft Prompt)是提示学习(Prompt Learning)中的一种技术,主要用于引导预训练语言模型在特定任务上的表现。传统的提示学习通常使用硬提示(Hard Prompt),也就是在输入文本中添加固定的离散文本,比如在情感分析任务里,在…...
问问 DeepSeek 什么是网络爬虫
在现代互联网时代,信息的获取和整理变得至关重要,而爬虫(Web Crawler) 是一种自动化工具,帮助我们从网页上提取数据。爬虫在新闻采集、商品比价、天气数据收集等方面应用广泛。 爬虫的工作原理 爬虫的基本工作流程如下…...
进程(下)【Linux操作系统】
文章目录 进程的状态R状态:S状态:D状态:T状态t状态Z状态:孤儿进程X状态: 进程的优先级如果我们要修改一个进程的优先级重置进程优先级 进程切换进程的调度 进程的状态 在内核中,进程状态的表示,…...
Insar结合ISCE2,某一个文件进行并行-stackSentinel.py
stackSentinel.py 依次执行 run_01 到 run_15,记录各自的日志 并行执行 run_16 里的所有命令,仍然记录日志 不知道对不对,测试的时间有点长就给停了 #!/bin/bash# ✅ 适用于 WSL/Linux runfiles_path"/mnt/e/insar_order_test/Stack…...
2.2.3 TCP—UDP-QUIC
文章目录 2.2.3 TCP—UDP-QUIC1. TCP如何做到可靠性传输1. ACK机制2. 重传机制3. 序号机制4. 窗口机制5. 流量机制6. 带宽机制 2. tcp和udp如何选择1. tcp和udp格式对比2. ARQ协议(Automatic Repeat reQuest,自动重传请求)1. ARQ协议的主要类…...
golang从入门到做牛马:第十九篇-Go语言类型转换:数据的“变形术”
在Go语言中,类型转换是一种将一种数据类型的变量转换为另一种类型的变量的操作。类型转换在处理不同类型的数据时非常有用,尤其是在需要将数据从一种类型转换为另一种类型进行计算或存储时。接下来,让我们一起深入了解Go语言中的类型转换。 什么是类型转换:数据的“变形术”…...
【Golang】第一弹-----初步认识GO语言
笔上得来终觉浅,绝知此事要躬行 🔥 个人主页:星云爱编程 🔥 所属专栏:Golang 🌷追光的人,终会万丈光芒 🎉欢迎大家点赞👍评论📝收藏⭐文章 一、Go语言的简单介绍 1、G…...
K8S学习之基础二十三:k8s的持久化存储之nfs
K8S持久化存储之nfs 在 Kubernetes (k8s) 中使用 NFS(Network File System)作为存储解决方案是一种常见的方式,特别是在需要共享存储的场景中。以下是关于如何在 Kubernetes 中使用 NFS 存储的详细说明: 1. 准备 NFS 服务器 …...
【Linux通信篇】深入理解进程间通信——管道
--------------------------------------------------------------------------------------------------------------------------------- 每日鸡汤:找一个对的人,然后好好去爱。一个你跟他在一起,然后又可以舒舒服服做自己的人。 -------…...
「 DelegateUI 」Ant-d 风格的 Qt Qml UI 套件
写在前面:关于为什么要写一套新的UI框架 一方面,Qt Qml 生态中缺乏一套既遵循现代设计规范(自带的功能少且丑,懂得都懂),又能深度整合 Qt 生态的开源组件库。 另一方面,Qt Qml 中也有一些其他方案,例如 FluentUI Qml…...
Redis--Set类型
目录 一、引言 二、介绍 三、命令 1.sadd,smembers,sismember 2.spop,srandmember 3.smove,srem 4.sinter,sinterstore 5.sunion,sunionstore,sdiff,sdiffstore 四、内部编码 1.intset 2.hashtable 五、应用场景 1.使用Set保存用…...
【0013】Python数据类型-列表类型详解
如果你觉得我的文章写的不错,请关注我哟,请点赞、评论,收藏此文章,谢谢! 本文内容体系结构如下: Python列表,作为编程中的基础数据结构,扮演着至关重要的角色。它不仅能够存储一系…...
文件上传靶场(10--20)
目录 实验环境: 具体内容实现: 第十关(双写绕过): 第十一关:(%00截断,此漏洞在5.2版本中) 正确用法 错误用法 思路: 操作过程: 第十二关…...
C# 检查系统是否开启 Hyper - V
C# 检查系统是否开启 Hyper - V 在使用 C# 开发应用程序时,有时需要判断系统是否开启了 Hyper - V 功能。Hyper - V 是 Windows 系统提供的一款虚拟化技术,以下为你介绍几种在 C# 中检查系统是否开启 Hyper - V 的方法。 方法一:通过查询系…...
【前端】BOM DOM
两天更新完毕,建议关注收藏点赞 友情链接: HTML&CSS&LESS&Bootstrap&Emmet Axios & AJAX & Fetch BOM DOM 待整理 js2 Web API 是浏览器提供的一套操作浏览器功能和页面元素的 API ( BOM 和 DOM)。官方文档点击跳转 目录 BOMDOM…...
K8s 1.27.1 实战系列(十一)ConfigMap
ConfigMap 是 Kubernetes 中管理非敏感配置的核心资源,通过解耦应用与配置实现灵活性和可维护性。 一、ConfigMap 的核心功能及优势 1、配置解耦 将配置文件(如数据库地址、日志级别)与容器镜像分离,支持动态更新而无需重建镜像。 2、多形式注入 环境变量:将键值…...
计算机网络——IP、MAC、ARP
一、IP地址 1. 什么是IP地址? IP地址(Internet Protocol Address)是互联网中设备的唯一逻辑标识符,类似于现实生活中的“门牌号”。它分为 IPv4(32位,如 192.168.1.1)和 IPv6(128位…...
