AtCoder Beginner Contest 416(2025.7.26)

文章目錄

  • A Vacation Validation
  • B 1D Akari(補)
  • C Concat (X-th)(補)
    • 題目考查
    • 題意簡述
    • 解法思路 :
    • AC代碼
  • D Match, Mod, Minimize 2(補)
    • 題目分數/評級
    • 題目考查
    • 時間復雜度
    • 題意簡述
    • 解法思路 :
    • AC代碼
  • 總結


前言
補題記錄+題解
賽時過的題就不寫題解了,沒過的寫寫題解。
做題情況:

  • AtCoder Beginner Contest 416(2025.7.26)
    現場完成:A題
    賽后補題:B/C題

題目傳送門

A Vacation Validation

#include<bits/stdc++.h>
using namespace std;
#define int long longsigned main(){int n,l,r;cin>>n>>l>>r;string s;cin>>s;int f=1;for(int i=l-1;i<r;i++){if(s[i]!='o'){f=0;break;}}if(f) cout<<"Yes"<<endl;else cout<<"No"<<endl;return 0;
}

B 1D Akari(補)

//思路:從左到右遍歷,記一個f初始為1,遇到非'#'的位置且f=1可以填'o',然后f=0,否則遇到'#'則f=1。 
#include<bits/stdc++.h>
using namespace std;
#define int long longsigned main(){string s;cin>>s;int l=s.size();bool f=true;for(int i=0;i<l;i++){if(s[i]!='#'){if(f){s[i]='o';f=false;}else s[i]='.';}else f=true;}cout<<s<<endl;return 0;
}

C Concat (X-th)(補)

題目考查

遞歸

題意簡述

給定N個字符串S1,…,SN?構造長度為K(K已知)的序列A1,…,AK,定義字符串f(A1?,…,AK?)為SA1+SA2+?+SAK(此處+表示字符串連接操作)
當所有NK個序列對應的f(A1?,…,AK?)按字典序排序后,請找出其中第X小的字符串。

解法思路 :

因為數據范圍不大,所以遞歸模擬一遍所有排列方式,再排個序就行。

AC代碼

//遞歸 
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=15;
int n,k,x;
vector<string> s(N),t;void f(int num,string ss){if(num==k+1){t.push_back(ss);return ;}for(int i=0;i<n;i++) f(num+1,ss+s[i]);
}signed main(){cin>>n>>k>>x;for(int i=0;i<n;i++) cin>>s[i];f(1,"");sort(t.begin(),t.end());//字典序排序cout<<t[x-1]<<endl;return 0;
}

D Match, Mod, Minimize 2(補)

題目分數/評級

400分

題目考查

雙指針

時間復雜度

O(nlogn)
原因:

  • 輸入:O(n)
  • sort遍歷;nlogn
  • 雙指針:O(n)(原因:j沒回退)
  • 輸出:O(1)

題意簡述

給兩個長度均為n的無序數組a和b,給定一個正整數m,要求重排a數組之后,求∑?(1到n)((ai?+bi?)mod m)的最小值

  • 0≤ai?,bi?< m

解法思路 :

由題給的范圍可知,(ai+bi)%m等價于ai+bi-m ,整體看起來,∑?(1到n)((Ai?+Bi?)modM)等價于 ∑?(1到n)(((ai?+bi)-m*k)。想要結果最小,只需要讓k盡可能大就行。即只需要讓ai+bi>=m的組合盡可能多就行
步驟:

  • 分別存入a和b并排序
  • 用雙指針遍歷a和b,一個從a的頭一個從b的尾,尋找ai+bi>=m的數量,并k++
  • 輸出∑?(1到n)(ai?+bi?)-k*m即可

AC代碼

//思路:(ai+bi)%M->ai+bi-M 
#include<bits/stdc++.h>
using namespace std;
#define int long longsigned main(){int T;cin>>T;while(T--){int n,m,sum=0;cin>>n>>m;vector<int> a(n+1),b(n+1);for(int i=1;i<=n;i++){//存入 cin>>a[i];sum+=a[i];}for(int i=1;i<=n;i++){cin>>b[i];sum+=b[i];}sort(a.begin(),a.end());sort(b.begin(),b.end());//		for(int i=1;i<=n;i++) cout<<a[i]<<" ";
//		cout<<endl;
//		for(int i=1;i<=n;i++) cout<<b[i]<<" ";
//		cout<<endl;int k=0;for(int i=n,j=1;j<=n&&i>=1;i--){//雙指針while(j<=n&&a[i]+b[j]<m) j++;if(j>n) break;k++,j++;}cout<<sum-(k*m)<<endl;}return 0;
}

總結

記錄一個菜雞的成長——如有疏漏歡迎指正

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

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

相關文章

基于 Hadoop 生態圈的數據倉庫實踐 —— OLAP 與數據可視化(五)

目錄 五、Hue、Zeppelin 比較 1. Zeppelin 簡介 2. Zeppelin 安裝配置 &#xff08;1&#xff09;安裝環境 &#xff08;2&#xff09;Zeppelin 及其相關組件 &#xff08;3&#xff09;配置 Zeppelin &#xff08;4&#xff09;啟動 Zeppelin &#xff08;5&#xff0…

《消息隊列學習指南:從 MQ 基礎到 SpringAMQP 實踐》

初識MQ 同步調用 目前我們采用的是基于OpenFeign的同步調用&#xff0c;也就是說業務執行流程是這樣的&#xff1a; 支付服務需要先調用用戶服務完成余額扣減 然后支付服務自己要更新支付流水單的狀態 然后支付服務調用交易服務&#xff0c;更新業務訂單狀態為已支付 三個…

深度學習 --- 過擬合與欠擬合

深度學習 — 過擬合與欠擬合 文章目錄深度學習 --- 過擬合與欠擬合一.概念1.1 過擬合1.2 欠擬合1.3 判斷方式二&#xff0c;解決欠擬合三&#xff0c;解決過擬合3.1 L2正則化3.1.1 定義以及作用3.1.2 代碼3.2 L1正則化3.3 L1與L2對比3.4 Dropout示例3.5 數據增強3.5.1 圖片縮放…

Python 之抽象方法 @abstractmethod 的理解

如果你熟悉 Java 的話&#xff0c;Java 里有一個抽象接口的概念&#xff0c;Python 里的抽象方法基本上與其類似。在 Python 中&#xff0c;abstractmethod 是一個裝飾器&#xff0c;用于定義抽象方法。它是實現抽象基類&#xff08;Abstract Base Class, ABC&#xff09;的核心…

深度學習·pytorch

廣播機制 從末尾開始逐個維度遍歷兩個矩陣的shape&#xff0c;如果維度不相同&#xff0c;則考慮廣播&#xff1a;任一方的維度為1或者維度不存在(小矩陣廣播為大矩陣)&#xff0c;這樣的運算可以廣播 可以廣播的例子 xtorch.empty(5,3,4,1) ytorch.empty(3,1,1) (x.add_(y)).s…

SpringBoot集成deepseek

pom文件&#xff1a;<?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org…

JetBrains Annotations:從入門到落地,徹底告別 NullPointerException

本文基于三篇高質量博客&#xff08;JetBrains Annotations官方文檔、Jakarta Validation 規范、《Effective Java》第3版&#xff09;的原文內容&#xff0c;結合作者在一線研發團隊落地 JetBrains Annotations 的實戰經驗&#xff0c;系統梳理了該注解庫的核心能力、使用姿勢…

基于Rust與HDFS、YARN、Hue、ZooKeeper、MySQL

基于Rust與HDFS、YARN、Hue、ZooKeeper、MySQL集合 以下是基于Rust與HDFS、YARN、Hue、ZooKeeper、MySQL等技術棧結合的實例,涵蓋不同場景和應用方向: 數據處理與分析 使用Rust編寫MapReduce作業,通過YARN提交到HDFS處理大規模數據集。Rust的高性能特性適合處理密集型計算…

芯片上市公司正在放棄射頻業務

轉載自--鐘林談芯射頻芯片賽道本來不卷的&#xff0c;投資人多了也就卷了。本周&#xff0c;多家媒體報道某芯片上市公司終止射頻業務&#xff0c;終止射頻業務的何止一家芯片上市公司&#xff0c;從去年開始就逐漸有上市公司終止射頻業務&#xff0c;開啟清貨模式。如人飲水&a…

Jmeter 性能測試監控之ServerAgent

使用 Jmeter 對 Linux 服務器的進行壓測時&#xff0c;想要監控服務器的 CPU 、內存&#xff0c;可以通過添加插件 【ServerAgent】來觀察,可以實時監控性能指標 一、ServerAgent-2.2.3下載 下載地址&#xff1a; GitCode - 全球開發者的開源社區,開源代碼托管平臺 二、通過插…

5.蘋果ios逆向-過ssl證書檢測和安裝ssh和獲取root權限

免責聲明&#xff1a;內容僅供學習參考&#xff0c;請合法利用知識&#xff0c;禁止進行違法犯罪活動&#xff01; 內容參考于&#xff1a;圖靈Python學院 工具下載&#xff1a; 鏈接&#xff1a;https://pan.baidu.com/s/1bb8NhJc9eTuLzQr39lF55Q?pwdzy89 提取碼&#xff1…

Navicat 17 教程:Windows 和 Mac 系統適用

一、引言 對于程序員們來說&#xff0c;Navicat是一款極為實用的數據庫管理工具。Navicat 17更是帶來了諸多新特性&#xff0c;能大大提升我們的工作效率。今天就為大家帶來Navicat 17在Windows和Mac系統上的使用教程。 二、準備工作 &#xff08;一&#xff09;下載安裝包 「…

Android 中 實現柱狀圖自定義控件

一、基本思路 創建自定義控件的數據模型; 創建一個自定義 View 類,繼承自 View; 在初始化方法中獲取自定義屬性的值。 創建設置數據方法,將數據模型列表轉換成自定義繪制時的數據; 重寫 onDraw 方法,以實現自定義的繪制邏輯。 二、主要繪制方法 1、drawLine 繪制直線 p…

Netty 核心原理與實戰:從 DiscardServer 看透 Reactor 模式與組件協作

目錄 Netty 是什么&#xff1f; Netty 的目標 Netty 實戰案例 DiscardServer 服務端程序 NettyDiscardServer 業務處理器 NettyDiscardHandler 配置類 NettyDemoConfig 回顧 Reactor 模式中的 IO 事件處理流程 Netty 中的 Channel Netty 中的 Reactor Netty 中的 Han…

關于“LoggerFactory is not a Logback LoggerContext but Logback is on ......“的解決方案

? ?重磅&#xff01;盹貓的個人小站正式上線啦&#xff5e;誠邀各位技術大佬前來探秘&#xff01;? 這里有&#xff1a; 硬核技術干貨&#xff1a;編程技巧、開發經驗、踩坑指南&#xff0c;帶你解鎖技術新姿勢&#xff01;趣味開發日常&#xff1a;代碼背后的腦洞故事、工具…

2025年6月電子學會青少年軟件編程(C語言)等級考試試卷(三級)

答案和更多內容請查看網站&#xff1a;【試卷中心 -----> 電子學會 ----> C/C ---->三級】 網站鏈接 青少年軟件編程歷年真題模擬題實時更新 編程題 第 1 題 打印城門 題目描述 給定一個正整數 n&#xff0c;輸出如下的星號城門。具體格式請見樣例。 輸入格…

跨平臺直播美顏SDK開發指南:兼顧性能與美型效果的最佳實踐

面對iOS、Android乃至Web等多端應用需求&#xff0c;如何開發一款真正跨平臺、兼顧性能與美型效果的美顏SDK&#xff0c;成為眾多開發團隊和產品經理的一道必答題。 今天筆者這篇文章&#xff0c;就從架構設計、性能優化、視覺效果調校三個關鍵維度&#xff0c;帶你深入解析跨平…

2025數字藏品安全保衛戰:高防CDN如何成為NFT應用的“隱形護甲”?

副標題&#xff1a; 從DDoS防御到全球加速&#xff0c;拆解數字資產平臺的生死防線&#x1f310; 引言&#xff1a;當數字藏品成為黑客的“頭號靶場”2025年全球數字藏品市場突破$1000億&#xff0c;但安全事件同步激增230%——某頭部NFT平臺因3.2Tbps DDoS攻擊癱瘓&#xff0c…

linux 執行sh腳本,提示$‘\r‘: command not found

1、在Linux下執行某個腳本文件卻提示$\r: command not found&#xff0c;如下圖:2、錯誤原因:a、 Windows 風格的換行符&#xff1a;Windows 系統使用 \r\n 作為行結束符&#xff0c;而 Linux 和 Unix 系統使用 \n。當你從 Windows 環境中復制文本到 Linux 環境時&#xff0c;可…

使用HaiSnap做了一款取件碼App(一鍵生成)

你是否懷揣著奇思妙想&#xff0c;卻因不懂代碼而對開發應用望而卻步&#xff1f;現在&#xff0c;有一個神奇AI Agent&#xff08;響指HaiSnap&#xff09;&#xff0c;一個響指就能實現&#xff0c;你說神奇不&#xff1f;只需要一句話就可以生成你想要的應用&#xff01;讓你…