【今日三題】小樂樂改數字 (模擬) / 十字爆破 (預處理+模擬) / 比那名居的桃子 (滑窗 / 前綴和)

頭像
??個人主頁:@小羊
??所屬專欄:每日兩三題
很榮幸您能閱讀我的文章,誠請評論指點,歡迎歡迎 ~

動圖描述

目錄

    • 小樂樂改數字 (模擬)
    • 十字爆破 (預處理+模擬)
    • 比那名居的桃子 (滑窗 / 前綴和)


小樂樂改數字 (模擬)

  • 小樂樂改數字

在這里插入圖片描述

  • 首先我們需要知道這個整數的長度來一位一位遍歷,最容易想到的是通過模10除10操作用數組存儲每一位;
  • 可以以 string 類型讀入整數,直接操作字符串,最后還可以用 stoi 函數自動去掉有前導0的情況。
#include <iostream>
using namespace std;int main()
{string str;cin >> str;for (auto& e : str){if (e % 2) e = '1';else e = '0';}cout << stoi(str) << endl;return 0;
}

十字爆破 (預處理+模擬)

  • 十字爆破

在這里插入圖片描述

  • 通過預處理操作,用 row[N] 和 col[N] 統計每一行每一列所有數之和,方便后續使用;
  • 因為每一行每一列總會相交于一點,因為還需要減去這一點的值。
#include <iostream>
using namespace std;const int N = 1e6 + 1;
using ll = long long;
ll row[N], col[N]; 
ll n, m;int main()
{ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin >> n >> m;ll arr[n][m];for (int i = 0; i < n; i++){for (int j = 0; j < m; j++){cin >> arr[i][j];row[i] += arr[i][j];col[j] += arr[i][j];}}for (int i = 0; i < n; i++){for (int j = 0; j < m; j++){cout << row[i] + col[j] - arr[i][j] << " ";}cout << endl;}return 0;
}

比那名居的桃子 (滑窗 / 前綴和)

  • 比那名居的桃子

在這里插入圖片描述

  • 固定窗口大小的滑動窗口問題,維護窗口內的值,在合適的時機<進窗口、判斷、更新值、出窗口>。
#include <iostream>
using namespace std;const int N = 1e5 + 1;
using ll = long long;
ll h[N], s[N];
ll sumh, sums, n, k;int main()
{cin >> n >> k;for (int i = 1; i <= n; i++) cin >> h[i];for (int i = 1; i <= n; i++) cin >> s[i];ll maxh = 0, mins = 0, day = 0;for (int l = 1, r = 1; r <= n; r++){sumh += h[r];sums += s[r];if (r - l + 1 == k){if (sumh > maxh){maxh = sumh;mins = sums;day = l;}else if (sumh == maxh && sums < mins){maxh = sumh;mins = sums;day = l;}sumh -= h[l];sums -= s[l++];}}cout << day << endl;return 0;
}
  • 求一段區間內的和,也可以用前綴和來做,某兩個前綴和的差 == 滑動窗口內維護的值,其他的操作沒什么區別。
#include <iostream>
using namespace std;const int N = 1e5 + 1;
using ll = long long;
ll preh[N], pres[N];
ll sumh, sums, n, k;int main()
{cin >> n >> k;for (int i = 1; i <= n; i++) {int a; cin >> a;preh[i] = preh[i - 1] + a;}for (int i = 1; i <= n; i++) {int b; cin >> b;pres[i] = pres[i - 1] + b;}ll maxh = 0, mins = 0, day = 0;for (int i = k; i <= n; i++){if (preh[i] - preh[i - k] > maxh){maxh = preh[i] - preh[i - k];mins = pres[i] - pres[i - k];day = i - k + 1;}else if (preh[i] - preh[i - k] == maxh){if (pres[i] - pres[i - k] < mins){maxh = preh[i] - preh[i - k];mins = pres[i] - pres[i - k];day = i - k + 1;}}}cout << day << endl;return 0;
}

本篇文章的分享就到這里了,如果您覺得在本文有所收獲,還請留下您的三連支持哦~

頭像

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

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

相關文章

四旋翼無人機手動模式

無人機的手動模式&#xff08;Manual Mode&#xff09;是指飛手完全通過遙控器手動控制無人機的飛行姿態、高度、方向和速度&#xff0c;?無需依賴自動穩定系統或輔助功能?&#xff08;如GPS定位、氣壓計定高、視覺避障等&#xff09;。這種模式賦予操作者最大的操控自由度&a…

C++高精度算法(加、減、乘)

首先聲明&#xff0c;沒有除法是因為我不會&#xff08;手動狗頭_doge&#xff09; 簡介 顧名思義&#xff0c;高精度算法是用來算一些超級大的數&#xff0c;比如長到 longlong 都存不下的那種&#xff0c;還有就是小數點后好多位&#xff0c;double都存不下的那種&#xff…

思科交換機配置

以下是交換機配置的詳細步驟指南&#xff0c;適用于Cisco交換機&#xff0c;其他品牌需調整命令&#xff1a; 1. 初始連接與基本配置 連接方式&#xff1a;使用Console線連接交換機&#xff0c;通過終端軟件&#xff08;如PuTTY&#xff09;登錄。波特率&#xff1a;9600&…

數據質量問題中,數據及時性怎么保證?如何有深度體系化回答!

數據治理&#xff0c;數據質量這快是中大廠&#xff0c;高階大數據開發面試必備技能&#xff0c;企業基于大數據底座去做數倉&#xff0c;那么首先需要保障的就是數據質量。 數據質量的重要性在現代企業中變得越發突出。以下是數據質量的幾個關鍵方面&#xff0c;說明其對企業…

【學習筆記】CPU 的“超線程”是什么?

1. 什么是超線程&#xff1f; 超線程&#xff08;Hyper-Threading&#xff09;是Intel的技術&#xff0c;讓一個物理CPU核心模擬出兩個邏輯核心。 效果&#xff1a;4核CPU在系統中顯示為8線程。 本質&#xff1a;通過復用空閑的硬件單元&#xff08;如ALU、FPU&#xff09;&a…

閉包的理解

一、閉包的概念 當通過調用外部函數返回的內部函數后&#xff0c;即使外部函數已經執行結束了&#xff0c;但是被內部函數引用的外部函數的變量依然會保存在內存中&#xff0c;我們把引用了其他函數作用域變量的函數和這些被引用變量的集合&#xff0c;稱為閉包&#xff08;Clo…

從小米汽車事故反思 LabVIEW 開發

近期&#xff0c;小米汽車的一起嚴重事故引發了社會各界的廣泛關注。這起事故不僅讓我們對智能汽車的安全性產生了深深的思考&#xff0c;也為 LabVIEW 開發領域帶來了諸多值得汲取的知識與領悟。 在智能汽車領域&#xff0c;尤其是涉及到智能駕駛輔助系統時&#xff0c;安全是…

項目進度延誤的十大原因及應對方案

項目進度延誤主要源于以下十大原因&#xff1a;目標不明確、需求頻繁變更、資源配置不足或不合理、溝通不暢、風險管理不足、缺乏有效的項目監控、技術難題未及時解決、團隊協作效率低下、決策鏈過長、外部因素影響。其中&#xff0c;需求頻繁變更是導致延誤的關鍵因素之一&…

AI 賦能 DBA:如何用 DeepSeek 等大模型簡化數據庫管理工作

AI 賦能 DBA:如何用 DeepSeek 等大模型簡化數據庫管理工作 摘要: 數據庫管理員(DBA)的工作涉及 SQL 優化、故障排查、性能監控等復雜任務。而 DeepSeek、ChatGPT 等大模型可以大幅減少重復勞動,提高 DBA 的工作效率。本文將結合真實案例,介紹如何利用 AI 優化 DBA 工作流…

vxe-table4.6 + vue3.2 + ant-design-vue 3.x 實現對列的顯示、隱藏、排序

概要 vxe-table中的vxe-toolbar沒有拖拽功能&#xff0c;故自己實現 源碼 <template><a-popover v-model:visible"open" placement"bottomRight" trigger"click"><template #content><div class"content">…

c++基礎知識二

1.面向對象 1.1 定義 面向對象編程是一種程序設計方法,它將數據和操作數據的方法封裝在一起,形成類。類是一種用戶自定義的數據類型,它包含了數據和對數據的操作方法。面向對象編程的特點包括封裝、繼承、多態 1.2 訪問控制符 public 公有屬性,方法。都可以訪問 prot…

Netty之ChannelOutboundBuffer詳解與實戰

深入理解Netty的高低水位線機制及其應用實踐 在高性能網絡編程中&#xff0c;Netty作為一個廣泛使用的異步事件驅動的Java框架&#xff0c;其高效的流量控制機制對于系統的穩定性和性能至關重要。本文將深入探討Netty中的高低水位線&#xff08;High/Low Water Mark&#xff0…

(自用)WebSocket創建流程

在Spring Boot項目中新建WebSocket服務&#xff0c;可以按照以下詳細步驟進行操作&#xff1a; 1.創建Spring Boot項目 可以通過Spring Initializr&#xff08;<>&#xff09;快速創建一個新的Spring Boot項目&#xff0c;添加Spring Web和Spring Boot DevTools依賴&…

JQuery初步學習

文章目錄 一、前言二、概述2.1 介紹2.2 安裝 三、語法3.1 文檔就緒3.2 選擇器 四、事件4.1 概述4.2 事件綁定/解綁4.3 一次性事件4.4 事件委托4.5 自定義事件 五、效果5.1 隱藏/顯示5.2 淡入淡出5.3 滑動5.4 動畫 六、鏈七、HTML7.1 內容/屬性7.2 元素操作7.3 類屬性7.4 樣式屬…

module錯誤集合

Library projects cannot set applicationId. applicationId is set to com.example.mylogin in default 在導入一個項目時&#xff0c;提示“Error:Library projects cannot set applicationId. applicationId is set to ‘com.xxx.yyy’ in default config.”&#xff0c;顯…

Spring Cloud 通用相關組件詳解

前言 Spring Cloud 是一個基于 Spring Boot 的微服務開發框架&#xff0c;它為開發者提供了一套完整的工具和組件&#xff0c;用于快速構建分布式系統中的常見模式&#xff08;如服務注冊與發現、負載均衡、配置管理等&#xff09;。本文將詳細介紹 Spring Cloud 的通用組件&a…

BUUCTF-web刷題篇(19)

28.CheckIn 源碼&#xff1a; #index.php <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><meta http-equiv&q…

如何在Android系統上單編ko?

文章目錄 一、先了解編譯驅動需要什么&#xff1f;二、配置makefile1、在Android系統編譯LOG上找到編譯器信息&#xff08;一般都會打印出來&#xff09;2、基于源MK構造 可獨立運行的makefile3&#xff09;進入docker&#xff0c;在此makefile目錄下敲make4&#xff09;最后根…

【Pandas】pandas DataFrame to_numpy

Pandas2.2 DataFrame Conversion 方法描述DataFrame.astype(dtype[, copy, errors])用于將 DataFrame 中的數據轉換為指定的數據類型DataFrame.convert_dtypes([infer_objects, …])用于將 DataFrame 中的數據類型轉換為更合適的類型DataFrame.infer_objects([copy])用于嘗試…

2025常用的ETL 產品推薦:助力企業激活數據價值

在當今數字化時代&#xff0c;企業面臨著海量數據的挑戰與機遇&#xff0c;ETL&#xff08;Extract, Transform, Load&#xff09;工具作為數據整合與分析的關鍵環節&#xff0c;其重要性日益凸顯。ETL 廠商眾多&#xff0c;各有優勢&#xff0c;本文將從多個維度進行分析&…