牛客網NC22012:判斷閏年問題詳解

牛客網NC22012:判斷閏年問題詳解

📝 題目描述

在這里插入圖片描述

題號:NC22012(牛客網)
時間限制:C/C++/Rust/Pascal 1秒,其他語言2秒
空間限制:C/C++/Rust/Pascal 32 M,其他語言64 M

判斷一個整數n是否是閏年。

📥 輸入描述

輸入一個整數n(1≤n≤2018)

📤 輸出描述

是閏年輸出"yes",否則輸出"no"

🌰 示例

示例1:

輸入: 2000
輸出: yes

示例2:

輸入: 1900
輸出: no

🔍 問題分析

這個問題要求我們判斷一個年份是否為閏年。在現代歷法中,閏年的判定規則如下:

  1. 普通年能被4整除且不能被100整除的為閏年
  2. 世紀年能被400整除的是閏年

這兩條規則可以合并為一個邏輯表達式:(year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)

💡 解題思路

  1. 讀取輸入的年份n
  2. 使用閏年判定公式進行判斷
  3. 根據判斷結果輸出"yes"或"no"

📊 代碼實現

#include<bits/stdc++.h>
using namespace std;int main(){int n;cin>>n;if(n%4==0&&n%100!=0||n%400==0)cout<<"yes"<<endl;else cout<<"no"<<endl;return 0;
}

📝 代碼解釋

  • 引入必要的頭文件bits/stdc++.h,這是一個包含了大部分常用C++標準庫的頭文件
  • 定義變量n用于存儲輸入的年份
  • 通過cin讀取用戶輸入的年份
  • 使用條件語句檢查年份是否滿足閏年條件:
    • n%4==0&&n%100!=0:年份能被4整除但不能被100整除
    • ||n%400==0:或者年份能被400整除
  • 如果條件成立,輸出"yes",否則輸出"no"

?? 復雜度分析

  • 時間復雜度:O(1),只需要進行簡單的算術運算和判斷
  • 空間復雜度:O(1),只使用了常數級別的存儲空間

🔑 知識點總結

  1. 閏年規則

    • 普通年份能被4整除但不能被100整除的是閏年
    • 世紀年份(能被100整除的年份)能被400整除的是閏年
  2. 邏輯表達式

    • 使用&&(與)和||(或)運算符組合多個條件
    • 注意運算符優先級,&&優先級高于||
  3. 輸入輸出

    • 使用cin讀取輸入
    • 使用cout輸出結果

這個簡單的問題是理解閏年規則和基礎邏輯運算的好例子。在實際編程中,日期和時間處理是常見的任務,理解閏年的判定對于正確處理日期計算非常重要。

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

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

相關文章

鴻蒙開發——1.ArkTS聲明式開發(UI范式基本語法)

鴻蒙開發——1、ArkTS聲明式開發:UI范式基本語法 [TOC](鴻蒙開發——1、ArkTS聲明式開發:UI范式基本語法)一、ArkTS的基本組成&#xff08;1&#xff09;核心概念&#xff08;像貼標簽一樣控制組件&#xff09;&#xff08;2&#xff09;基礎工具包&#xff08;現成的積木塊&am…

【SPIN】PROMELA語言編程入門基礎語法(SPIN學習系列--1)

PROMELA&#xff08;Protocol Meta Language&#xff09;是一種用于描述和驗證并發系統的形式化建模語言&#xff0c;主要與SPIN&#xff08;Simple Promela Interpreter&#xff09;模型檢查器配合使用。本教程將基于JSPIN&#xff08;SPIN的Java圖形化版本&#xff09;&#…

Automatic Recovery of the Atmospheric Light in Hazy Images論文閱讀

Automatic Recovery of the Atmospheric Light in Hazy Images 1. 論文的研究目標與實際意義1.1 研究目標1.2 實際問題與產業意義2. 論文的創新方法、模型與公式2.1 方法框架2.1.1 方向估計(Orientation Estimation)2.1.2 幅值估計(Magnitude Estimation)2.2 與傳統方法的對…

基于微信小程序的在線聊天功能實現:WebSocket通信實戰

基于微信小程序的在線聊天功能實現&#xff1a;WebSocket通信實戰 摘要 本文將詳細介紹如何使用微信小程序結合WebSocket協議開發一個實時在線聊天功能。通過完整的代碼示例和分步解析&#xff0c;涵蓋界面布局、WebSocket連接管理、消息交互邏輯及服務端實現&#xff0c;適合…

速通:國際數字影像產業園園區服務體系

速通&#xff1a;國際數字影像產業園園區服務體系 國際數字影像產業園服務體系致力于構建全周期、多維度、高效率的產業賦能平臺&#xff0c;旨在優化營商環境&#xff0c;激發企業活力&#xff0c;推動數字影像產業集群化、高端化發展。 一、基礎運營與智慧管理服務 智慧化…

DeerFlow:字節新一代 DeepSearch 框架

項目地址&#xff1a;https://github.com/bytedance/deer-flow/ 【全新的 Multi-Agent 架構設計】獨家設計的 Research Team 機制&#xff0c;支持多輪對話、多輪決策和多輪任務執行。與 LangChain 原版 Supervisor 相比&#xff0c;顯著減少 Tokens 消耗和 API 調用次數&#…

MySQL 大表中添加索引的兩種常見方式及其優缺點分析

引言 在數據庫性能優化過程中&#xff0c;給大表添加索引是一項常見且重要的操作。由于大表數據量龐大&#xff0c;索引的創建過程往往涉及較高的系統開銷和復雜的操作流程。本文將介紹兩種在大表中添加索引的常見方法&#xff1a;直接添加索引和表復制方式&#xff0c;分別分…

Ubuntu系統掛載磁盤并配置開機自動掛載

今天買了個服務器然后掛載了一個500G的磁盤&#xff0c;但是登錄進去后發看不到&#xff0c;就是下面這樣的 只能看到100G的系統盤 rootecm-74de:/usr/local# df -h Filesystem Size Used Avail Use% Mounted on tmpfs 3.1G 1.1M 3.1G 1% /run /dev/vda2 …

Android開發-Application

在Android應用開發中&#xff0c;Application類扮演著非常重要的角色。它作為整個應用程序的全局單例實例存在&#xff0c;在應用啟動時最先被創建&#xff0c;并且在整個應用生命周期內持續存在。通過自定義Application類&#xff0c;開發者可以執行全局初始化操作、管理全局狀…

邊緣計算平臺

本文來源 &#xff1a; 騰訊元寶 邊緣計算平臺是一種在靠近數據源頭的網絡邊緣側部署的分布式計算架構&#xff0c;通過融合網絡、計算、存儲和應用核心能力&#xff0c;就近提供實時、低延遲的智能服務。以下是其核心要點&#xff1a; ??1. 定義與特點?? ??定義??&a…

Spring 框架 JDBC 模板技術詳解

一、JDBC 模板技術概述 在傳統 JDBC 開發中&#xff0c;開發人員需要手動處理數據庫連接&#xff08;Connection&#xff09;、事務管理、語句執行&#xff08;Statement&#xff09;和結果集&#xff08;ResultSet&#xff09;等繁瑣操作&#xff0c;不僅代碼冗余度高&#x…

Axure難點解決分享:統計分析頁面引入Echarts示例動態效果

親愛的小伙伴,在您瀏覽之前,煩請關注一下,在此深表感謝! Axure產品經理精品視頻課已登錄CSDN可點擊學習https://edu.csdn.net/course/detail/40420 課程主題:統計分析頁面引入Echarts示例動態效果 主要內容:echart示例引入、大小調整、數據導入 應用場景:統計分析頁面…

SpringBoot 數據校驗與表單處理:從入門到精通(萬字長文)

一、SpringBoot 數據驗證基礎 1.1 數據驗證的重要性 在現代Web應用開發中&#xff0c;數據驗證是保證系統安全性和數據完整性的第一道防線。沒有經過驗證的用戶輸入可能導致各種安全問題&#xff0c;如SQL注入、XSS攻擊&#xff0c;或者簡單的業務邏輯錯誤。 數據驗證的主要…

Ubuntu 22.04(WSL2)使用 Docker 安裝 Zipkin 和 Skywalking

Ubuntu 22.04&#xff08;WSL2&#xff09;使用 Docker 安裝 Zipkin 和 Skywalking 分布式追蹤工具在現代微服務架構中至關重要&#xff0c;它們幫助開發者監控請求在多個服務之間的流動&#xff0c;識別性能瓶頸和潛在錯誤。本文將指導您在 Ubuntu 22.04&#xff08;WSL2 環境…

python打卡day25@浙大疏錦行

知識點回顧&#xff1a; 1.異常處理機制 2.debug過程中的各類報錯 3.try-except機制 4.try-except-else-finally機制 在即將進入深度學習專題學習前&#xff0c;我們最后差缺補漏&#xff0c;把一些常見且重要的知識點給他們補上&#xff0c;加深對代碼和流程的理解。 作業&a…

鴻蒙OSUniApp 開發實時聊天頁面的最佳實踐與實現#三方框架 #Uniapp

使用 UniApp 開發實時聊天頁面的最佳實踐與實現 在移動應用開發領域&#xff0c;實時聊天功能已經成為許多應用不可或缺的組成部分。本文將深入探討如何使用 UniApp 框架開發一個功能完善的實時聊天頁面&#xff0c;從布局設計到核心邏輯實現&#xff0c;帶領大家一步步打造專…

43、Server.UrlEncode、HttpUtility.UrlDecode的區別?

Server.UrlEncode 和 HttpUtility.UrlDecode 是 .NET 中用于處理 URL 編碼/解碼的兩個不同方法&#xff0c;主要區別在于所屬命名空間、使用場景和具體行為。以下是詳細對比&#xff1a; 1. 所屬類庫與命名空間 Server.UrlEncode 屬于 System.Web.HttpServerUtility 類。通常…

代碼隨想錄 算法訓練 Day1:數組

題目一&#xff1a; 給定一個 n 個元素有序的&#xff08;升序&#xff09;整型數組 nums 和一個目標值 target &#xff0c;寫一個函數搜索 nums 中的 target&#xff0c;如果目標值存在返回下標&#xff0c;否則返回 -1。 示例 1: 輸入: nums [-1,0,3,5,9,12], target …

容器技術 20 年:顛覆、重構與重塑軟件世界的力量

目錄 容器技術發展史 虛擬化技術向容器技術轉變 Docker的橫空出世 容器編排技術與Kubernetes 微服務的出現與Istio 工業標準的容器運行時 容器技術與 DevOps 的深度融合? 無服務架構推波助瀾 展望未來發展方向 從 20 世紀硬件虛擬化的笨重&#xff0c;到操作系統虛擬…

集成釘釘消息推送功能

1. 概述 本文檔詳細描述了在若依框架基礎上集成釘釘消息推送功能的開發步驟。該功能允許系統向指定釘釘用戶發送文本和富文本消息通知。 2. 環境準備 2.1 釘釘開發者賬號配置 登錄釘釘開發者平臺&#xff1a;https://open.dingtalk.com/創建/選擇企業內部應用獲取以下關鍵信…