藍橋杯沖刺

例題1:握手問題

在這里插入圖片描述

方法1:數學推理(簡單粗暴)

在這里插入圖片描述

方法2:用代碼實現方法1

#include<iostream>
using namespace std;
int main()
{int result = 0;for (int i = 1; i <= 49; i++){for (int j = i + 1; j <= 50; j++){//第i個人與第j個人之間的握手總次數(不考慮這7個人之間互不握手)result++;}}//這7個人之間握手的次數是21次cout << result - 21;return 0;
}

方法3:直接計算握手的總次數

#include<iostream>
using namespace std;
int main()
{int arr[51] = { 0 };for (int i = 1; i <= 7; i++)arr[i] = 1;//假設前7個人之間互不握手,在數組中用1做標記int result = 0;for (int i = 1; i <= 49; i++){for (int j = i + 1; j <= 50; j++){//第i個人與第j個人握手if (!(arr[i] == 1 && arr[j] == 1))result++;}}cout << result;return 0;
}

例題2:好數(兩種方法)

在這里插入圖片描述

方法1:從最低位開始,逐位判斷每一位是否滿足好數的條件

#include <iostream>
using namespace std;
bool hN(int x)
{int t = 1;//此時t表示最低位 while (x != 0){if (t % 2 == 1)//若奇數位上的數是偶數,則該數不是好數 {if ((x % 10) % 2 == 0)return false;}else//若偶數位上的數是奇數,則該數不是好數 {if ((x % 10) % 2 == 1)return false;}x /= 10;t++;}return true;
}int main()
{int N = 0;cin >> N;int sum = 0;for (int i = 1; i <= N; i++){if (hN(i) == true)sum++;}cout << sum;return 0;
}

方法2:分別得到奇數位與偶數位,然后判斷是否滿足好數的條件

#include <iostream>
using namespace std;
bool hNum(int x)
{int temp=x/10;while(x)//判斷奇數位上的數是否是偶數{if((x%10)%2==0)return false;x/=100;}while(temp)//判斷偶數位上的數是否是奇數{if((temp%10)%2==1)return false;temp/=100;}return true;
}int main()
{int N=0,count=0;cin>>N;for(int i=1;i<=N;i++){if(hNum(i))count++;}cout<<count;return 0;
}

例題3:牛數問題(一種正確解法和一種看起來正確的解法)

第一年的時候,有一頭母牛,它從第二年開始,每年年初生一頭小母牛,每頭小母牛從第4個年頭開始,也生一頭小母牛,請問第n年的時候,有多少頭牛?(n>0&&n<55)

方法1(看起來正確):數學推理法

在這里插入圖片描述
n>3時的公式是根據n=4~7的數據推導的,也就是說當n<=7時滿足公式,其余情況下就不滿足了,例如當n=8時,公式得出的結果是18,但正確結果是19(我只能說太坑了)

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<math.h>
unsigned int sum(unsigned int n)
{if (n <= 3)return n;elsereturn (pow(n, 2) - 5 * n) / 2 + 6;
}int main()
{unsigned int n = 0;printf("請輸入年份\n");scanf("%u", &n);unsigned int count = sum(n);printf("第%u年有%u頭牛", n, count);return 0;
}

方法2(正確解法)

#include<iostream> 
using namespace std;
/*
經分析可知,一共有四種牛,分別用a、b1、b2、b3表示這四種牛的數量 
a:母牛的數量
b1:1歲的小母牛的數量
b2:2歲的小母牛的數量
b3:3歲的小母牛的數量
*/int main()
{int num[55];//num[1]~num[54]存儲第1~54年牛的數量 int a=1,b1=0,b2=0,b3=0;//第一年四種牛的數目 num[1]=1;for(int i=2;i<55;i++) {a = a + b3;//第i年的母牛數 = 第i-1年的(母牛數 + 3歲的小母牛數 )//for循環用于求第i年的牛數num[i] = num[i-1] + a; //第i年的牛數 = 第i-1年的牛數 + 第i年年初母牛生的小母牛的數量b3 = b2;//第i年的3歲小母牛數 =  第i-1年的2歲小母牛數b2 = b1;//第i年的2歲小母牛數 =  第i-1年的1歲小母牛數/	b1 = a; //第i年的1歲小母牛數 =  第i年的母牛數 }int n;cout<<"請輸入年份\n" ;cin>>n;cout<<num[n];return 0;
}

例題3:蛇形上三角

在這里插入圖片描述

思路

創建一個100行100列的數組,存儲100行的蛇形上三角,再根據輸入n的值,打印對應的蛇形上三角

#include<iostream>
using namespace std;
int main()
{int arr[100][100]={1};/*
5行的蛇形上三角 0 1 2  3  4 
0	 1 3 6 10 15
1    2 5 9 14
2    4 8 13
3    7 12
4    11*/int temp=1;for(int i=1;i<100;i++){arr[i][0]=arr[i-1][0]+temp;temp++;}temp=2;for(int i=0;i<100;i++){int m=temp;for(int j=1;j<100;j++){arr[i][j]=arr[i][j-1]+temp;temp++;}	temp=m+1;}int n;cin>>n;//如何根據根據輸入n的值,打印對應的蛇形上三角 for(int i=0;i<n;i++){for(int j=0;j<n-i;j++){/*第1行(i=0)打印n個元素,j從0到n-1,即j<n第2行(i=1)打印n-1個元素,j從0到n-2,即j<n-1第3行(i=2)打印n-2個元素,j從0到n-3,即j<n-2......第n行(i=n-1)打印1個元素,j=0,即j<1 因此j<n-i */cout<<arr[i][j]<<" ";}cout<<endl;}return 0;
}

再提供一種輸出蛇形上三角的方法

	int n;cin>>n;//如何根據根據輸入n的值,打印對應的蛇形上三角 int a=n; for(int i=0;i<n;i++){for(int j=0;j<a;j++){cout<<arr[i][j]<<" ";}cout<<endl;a--;}

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

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

相關文章

如何在服務器里備份文件或系統

當我們在企業里&#xff0c;備份文件或者系統是需要經常做的&#xff0c;當我們服務器系統崩潰了或者損壞了&#xff0c;或者我們的存放的工作需求的文件夾損壞丟失&#xff0c;這時候如何我們提前備份了就可以快速回復。 那接下來我們直接上實操&#xff0c;接下來操作是在虛…

Qt實現點擊按鈕彈出側邊框(可用于登錄界面)

Qt實現點擊按鈕彈出側邊框 1、創建界面2、封面按鈕實現2.1 連接信號與槽2.2固定封面按鈕、側邊框及各個標簽位置和頂層顯示封面按鈕2.3創建側邊框狀態并在初始化列表中初始化2.4 側邊框動畫效果實現 3、視頻演示效果4、總結 1、創建界面 封面按鈕樣式表 QPushButton { border…

SQL WHERE 與 HAVING

WHERE 和 HAVING 都是 SQL 中用于篩選數據的子句&#xff0c;但它們有重要的區別 WHERE 子句 在 分組前 過濾數據 作用于 原始數據行 不能使用聚合函數 執行效率通常比 HAVING 高 SELECT column1, column2 FROM table WHERE condition; HAVING 子句 在 分組后 過濾數據 …

表格數據導出為Excel

環境及插件配置&#xff1a;&#xff08;理論上vue2應該也可以使用&#xff0c;沒有試驗過&#xff09; "vue": "^3.2.36", "webpack": "^5.94.0", "webpack-cli": "^5.1.4", "file-saver": "^2.…

Photoshop 2025 Mac中文 Ps圖像編輯軟件

Photoshop 2025 Mac中文 Ps圖像編輯軟件 文章目錄 Photoshop 2025 Mac中文 Ps圖像編輯軟件一、介紹二、效果三、下載 一、介紹 Adobe Photoshop 2025 Mac版集成了多種強大的圖像編輯、處理和創作功能。①強化了Adobe Sensei AI的應用&#xff0c;通過智能摳圖、自動修復、圖像…

rust Send Sync 以及對象安全和對象不安全

開頭&#xff1a;菜鳥小明的疑惑 小明&#xff1a; “李哥&#xff0c;我最近學 Rust&#xff0c;感覺它超級嚴謹&#xff0c;啥 Send、Sync、對象安全、靜態分發、動態分發的&#xff0c;我都搞暈了&#xff01;為啥 Rust 要設計得這么復雜啊&#xff1f;” 小李&#xff0…

JAVA:利用 JSONPath 操作JSON數據的技術指南

1、簡述 JSONPath 是一種強大的工具&#xff0c;用于查詢和操作 JSON 數據。類似于 SQL 的語法&#xff0c;它為處理復雜的 JSON 數據結構提供了簡單且高效的解決方案。? 代碼樣例&#xff1a;https://gitee.com/lhdxhl/springboot-example.git 本文將介紹 JSONPath 的基本…

服務器磁盤卷組緩存cache設置介紹

工具1&#xff1a; storcli a. 確認軟件包是否安裝 [rootlocalhost ~]#rpm -qa | grep storcli storcli-1.21.06-1.noarch 備注&#xff1a;若檢索結果為空&#xff0c;需要安裝對應的軟件安裝包。安裝命令如下&#xff1a; #rpm -ivh storcli-xx-xx-1.noarch.rpm b. 查看邏輯…

java項目分享-分布式電商項目附軟件鏈接

今天來分享一下github上最熱門的開源電商項目安裝部署&#xff0c;star 12.2k&#xff0c;自行安裝部署歷時兩天&#xff0c;看了這篇文章快的話半天搞定&#xff01;該踩的坑都踩完了&#xff0c;軟件也打包好了就差喂嘴里。 項目簡介 mall-swarm是一套微服務商城系統&#xf…

QtWebApp使用

QtWebApp 是一個輕量級的 HTTP 服務器庫,基于 Qt 網絡模塊(QTcpServer 和 QTcpSocket)實現,適用于嵌入式設備、本地服務或需要快速搭建 Web 接口的 Qt 應用程序。 1. 核心功能 HTTP/1.1 服務器 支持 GET、POST、PUT、DELETE 等標準 HTTP 方法。 解析請求頭、查詢參數(Qu…

用Rust和WebAssembly打造輕量級前端加密工具

開頭聊兩句 最近在折騰前端項目時&#xff0c;發現一個問題&#xff1a;很多時候需要在瀏覽器里做點加密作&#xff0c;比如保護用戶輸入的數據&#xff0c;但JavaScript跑起來總感覺慢吞吞的。于是我開始琢磨&#xff0c;能不能用Rust寫個高性能的加密模塊&#xff0c;再通過W…

Linux NUC小主機化身視頻會議服務器: 技術優勢與部署實戰

在遠程辦公常態化背景下&#xff0c;視頻會議系統對硬件的輕量化、低功耗與穩定性提出了更高要求。基于Intel NUC&#xff08;Next Unit of Computing&#xff09;打造的Linux服務器方案&#xff0c;憑借其高性能、低能耗和可擴展性優勢&#xff0c;正成為中小企業搭建視頻會議…

idea查看class字節碼

概述 如何查看class字節碼&#xff1f;話不多說&#xff0c;直接看示例&#xff01; 方法一 選中class類&#xff0c;然后選擇 View -> Show Bytecode 方法二 安裝jclasslib插件 方法三 Settings -> Tools -> External Tools 添加一個tool //指定javap.exe路…

python使用cookie、session、selenium實現網站登錄(爬取信息)

一、使用cookie 這段代碼演示了如何使用Python的urllib和http.cookiejar模塊來實現網站的模擬登錄&#xff0c;并在登錄后訪問需要認證的頁面。 # 導入必要的庫 import requests from urllib import request, parse# 1. 導入http.cookiejar模塊中的CookieJar類&#xff0c;用…

機器人基礎知識-1

1.六軸機器人中的六軸是什么&#xff1f; 第一軸&#xff08;J1&#xff09;&#xff1a;底座旋轉 控制機器人整體繞垂直軸旋轉&#xff08;左右擺動&#xff09;&#xff0c;決定工作范圍的水平方向。 第二軸&#xff08;J2&#xff09;&#xff1a;下臂前后擺動 驅動機器人的…

將代理連接到 Elasticsearch 使用模型上下文協議

作者&#xff1a;來自 Elastic Jedr Blaszyk 及 Joe McElroy 讓我們使用 Model Context Protocol 服務器 與 你的 數據 在 Elasticsearch 中聊天。 如果與你的數據交互像與同事聊天一樣輕松&#xff0c;會怎樣&#xff1f;想象一下&#xff0c;你只需簡單地問&#xff1a;“顯…

Vue 組件 - 動態組件

Vue 漸進式JavaScript 框架 基于Vue2的學習筆記 - Vue 組件 - 動態組件 目錄 動態組件 選項卡頁面示例 更簡單寫法 增加輸入框 彌補措施 總結 動態組件 選項卡頁面示例 功能&#xff1a;選項卡功能&#xff0c;設置導航點擊哪個顯示相應頁面。 設置三個全局組件&#…

Telnet協議詳解:本質與操作邏輯

一、Telnet的本質 1. 協議定位 Telnet是一種基于TCP的明文遠程終端控制協議&#xff0c;屬于應用層協議。其核心功能是通過網絡模擬物理終端&#xff0c;實現對遠程主機的命令行控制。 2. 核心特性 網絡虛擬終端&#xff08;NVT&#xff09;&#xff1a;建立統一的字符編碼標…

Android 使用CameraX實現預覽、拍照、錄制視頻(Java版)

Android 官方關于相機的介紹如下&#xff1a; https://developer.android.google.cn/media/camera/get-started-with-camera?hlzh_cn 一、開始使用 Android 相機 Android相機一般包含前置攝像頭和后置攝像頭&#xff0c;使用相機可以開發一系列激動人心的應用&#xff0c;例…

面向對象

一、Scala包 1、基本語法 package 包名 2、Scala 包的三大作用&#xff08;和 Java 一樣&#xff09; &#xff08;1&#xff09;區分相同名字的類 &#xff08;2&#xff09;當類很多時&#xff0c;可以很好的管理類 &#xff08;3&#xff09;控制訪問范圍 二、包說明 1、說明…