【藍橋杯速成】| 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)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/897890.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/897890.shtml
英文地址,請注明出處:http://en.pswp.cn/news/897890.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

[C++Qt] 槽函數收不到信號問題(信號的注冊)

&#x1f4e2;博客主頁&#xff1a;https://loewen.blog.csdn.net&#x1f4e2;歡迎點贊 &#x1f44d; 收藏 ?留言 &#x1f4dd; 如有錯誤敬請指正&#xff01;&#x1f4e2;本文由 丶布布原創&#xff0c;首發于 CSDN&#xff0c;轉載注明出處&#x1f649;&#x1f4e2;現…

從零開始用AI開發游戲(一)

1. 核心玩法設計 核心目標&#xff1a;玩家需在隨機生成的3D迷宮中尋找出口&#xff0c;躲避陷阱、收集道具、解開謎題。核心機制&#xff1a; 隨機生成迷宮&#xff1a;每次游戲生成不同結構的迷宮&#xff08;遞歸分割算法或深度優先搜索&#xff09;。第一人稱視角&#xf…

基于ssm的寵物醫院信息管理系統(全套)

一、系統架構 前端&#xff1a;html | layui | vue | element-ui 后端&#xff1a;spring | springmvc | mybatis 環境&#xff1a;jdk1.8 | mysql | maven | tomcat | idea | nodejs 二、代碼及數據庫 三、功能介紹 01. web端-首頁1 02. web端-首頁…

【CXX】6.7 SharedPtr<T> — std::shared_ptr<T>

std::shared_ptr 的 Rust 綁定稱為 SharedPtr。 限制&#xff1a; SharedPtr 不支持 T 為不透明的 Rust 類型。對于在語言邊界上傳遞不透明 Rust 類型的所有權&#xff0c;應改用 Box&#xff08;C 中的 rust::Box&#xff09;。 示例 // src/main.rsuse std::ops::Deref; …

利用python生成excel中模板范圍對應的shape文件

利用python生成excel中模板范圍對應的shape文件 # -*- coding: utf-8 -*- import os.pathimport pandas as pd from shapely.geometry import Polygon from shapely.wkt import dumps import argparse# 創建解析器 parser argparse.ArgumentParser(description"這是一個…

cursor使用

引入私有文檔 設置-> Features->下滑找到Docs url后邊多加一個 / 可以拉取url下所有的頁面(子頁面&#xff0c;子目錄)&#xff0c;不加只拉取url當前頁面 使用 選擇 Docs 回車 選擇 文檔 直接解析鏈接 鏈接 回車 搜索引擎 web 對比git版本差異 git 選擇其中一個 g…

達夢數據庫中插入導出圖片的方法與應用

達夢數據庫中插入導出圖片的方法與應用 在數據庫的實際應用場景中&#xff0c;圖片存儲是一項常見且重要的需求。以電商平臺為例&#xff0c;商品展示圖片是吸引消費者的關鍵元素&#xff1b;而在社交軟件里&#xff0c;用戶頭像更是個人形象的直觀體現。針對達夢數據庫&#…

【云原生】動態資源分配(DRA)深度洞察報告

1. DRA 的發展與設計靈感 Kubernetes 早期通過 Device Plugin&#xff08;設備插件&#xff09;機制支持 GPU、NIC 等特殊硬件&#xff0c;將節點上可用設備數量上報給 kubelet 和調度器。但設備插件模式存在局限&#xff1a;調度器只能根據節點標簽等屬性粗粒度篩選&#xff…

嵌入式八股ARM篇

前言 ARM篇主要介紹一下寄存器和中斷機制,至于匯編這一塊…還請大家感興趣自行學習 1.寄存器 R0 - R3 R4 - R11 寄存器 R0 - R3一般用作函數傳參 R4 - R11用來保存程序運算的中間結果或函數的局部變量 在函數調用過程中 注意在發生異常的時候 cortex-M0架構會自動將R0-R3壓入…

Python 實現的采集諸葛靈簽

Python 實現的采集諸葛靈簽 項目介紹 這是一個基于 Python 開發的諸葛靈簽數據采集和展示項目。通過爬蟲技術獲取諸葛神簽的簽文和解簽內容&#xff0c;并提供數據存儲和查詢功能。 項目結構 zhuge/├── zhuge_scraper.py # 爬蟲主程序├── zhuge_pages/ # 數據存儲目錄…

【C++項目實戰】校園公告搜索引擎:完整實現與優化指南

&#x1f3ac; 個人主頁&#xff1a;誰在夜里看海. &#x1f4d6; 個人專欄&#xff1a;《C系列》《Linux系列》《算法系列》 ?? 道阻且長&#xff0c;行則將至 目錄 &#x1f4da;一、項目概述 &#x1f4d6;1.項目背景 &#x1f4d6;2.主要功能 &#x1f4d6;3.界面展…

代理(Delegate)、閉包(Closure)、Notification(通知中心) 和 swift_event_bus適用場景和工作方式

在 Swift 開發中&#xff0c;在 Swift 開發中&#xff0c;代理&#xff08;Delegate&#xff09;、閉包&#xff08;Closure&#xff09;、Notification&#xff08;通知中心&#xff09; 和 swift_event_bus 主要用于 組件之間的通信&#xff0c;但它們的適用場景和工作方式有…

設計模式--單例模式(Singleton)【Go】

引言 在設計模式中&#xff0c;單例模式&#xff08;Singleton Pattern&#xff09;是一種非常常見且實用的模式。它的核心思想是確保一個類只有一個實例&#xff0c;并提供一個全局訪問點。這種模式在需要全局唯一對象的場景中非常有用&#xff0c;比如配置管理、日志記錄、數…

MySQL數據庫復制

文章目錄 MySQL數據庫復制一、復制的原理二、復制的搭建1.編輯配置文件2.在主庫上創建復制的用戶3.獲取主庫的備份4.基于從庫的恢復5.建立主從復制6.開啟主從復制7.查看主從復制狀態 MySQL數據庫復制 MySQL作為非常流行的數據庫&#xff0c;支撐它如此出彩的因素主要有兩個&am…

Sourcetree——使用.gitignore忽略文件或者文件夾

一、為何需要文件忽略機制&#xff1f; 1.1 為什么要會略&#xff1f; 對于開發者而言&#xff0c;明智地選擇忽略某些文件類型&#xff0c;能帶來三大核心優勢&#xff1a; 倉庫純凈性&#xff1a;避免二進制文件、編譯產物等污染代碼庫 安全防護&#xff1a;防止敏感信息&…

基于yolov8+streamlit實現目標檢測系統帶漂亮登錄界面

【項目介紹】 基于YOLOv8和Streamlit實現的目標檢測系統&#xff0c;結合了YOLOv8先進的目標檢測能力與Streamlit快速構建交互式Web應用的優勢&#xff0c;為用戶提供了一個功能強大且操作簡便的目標檢測平臺。該系統不僅具備高精度的目標檢測功能&#xff0c;還擁有一個漂亮且…

分享vue好用的pdf 工具實測

vue3-pdf-app&#xff1a; 帶大綱&#xff0c;帶分頁&#xff0c;帶縮放&#xff0c;帶全屏&#xff0c;帶打印&#xff0c;帶下載&#xff0c;帶旋轉 下載依賴&#xff1a; yarn add vue3-pdf-appornpm install vue3-pdf-app 配置類&#xff1a; 創建文件 pdfConfig.ts /…

基于微信小程序開發的寵物領養平臺——代碼解讀

項目前端 一、項目的技術架構概況 一句話概括&#xff1a;該項目是基于微信小程序開發的寵物領養平臺&#xff0c;采用原生小程序框架進行用戶界面的構建&#xff0c;使用 wx.request 進行 API 請求&#xff0c;并通過 getApp() 和本地存儲來管理全局狀態和用戶信息。 一&am…

最完美的WPF無邊框設計!

常規的無邊框方法設計 常規的WPF無邊框設計方法都是通過AllowsTransparency="True"和WindowStyle=“None”,并且使用WindowChrome樣式來實現,但是這樣會有問題就是,窗體最大化的時候將底部任務欄給擋住了,另外最大化的時候不能拖動窗體。參考這個大佬的設計@ 若…

【區塊鏈】btc

學習視頻源鏈接&#xff1a; https://www.bilibili.com/video/BV1Vt411X7JF/ 本文是根據肖老師的視頻進行的筆記記錄 一、 cryptographic hash function 1.1. collision resistance抗碰撞性 &#xff1a; collision 指的是hash碰撞 抗碰撞性 (Collision Resistance) 是密碼…