String +memset字符串類題型【C++】

tips:

1、尋找最大公共子串時,如果字符串可以旋轉但是不能反轉,考慮在每個字符串后重復一次自身,如 "abcd" 變為 "abcdabcd",這樣在用dp就可以了。

如何變環+拆環為鏈:

 cin>>n>>m;//拆環為鏈,復制一遍字符串串 for(int i = 1; i <= n;++i){cin>>s[i];s[i]+=s[i];}

尋找最大公共子串:

int cal_lcs(string a,string b)
{a = " "+ a, b =" "+b;memset(f,0,sizeof f);//對f初始化int cnt = 0;for(int i = 1;i<=a.size();++i){for(int j = 1;j<=b.size();++j){if(a[i] == b[j]) f[i][j] = max(f[i][j],f[i-1][j-1]+1);cnt = max(cnt,f[i][j]);}}return cnt;
}

menset()

針對menset()函數做一個簡單的介紹

void *memset(void *str, int c, size_t n)
  • 解釋:復制字符 c(一個無符號字符)到參數 str 所指向的字符串的前 n 個字符。
  • 作用:是在一段內存塊中填充某個給定的值,它是對較大的結構體或數組進行清零操作的一種最快方法
  • 頭文件:C中#include<string.h>,C++中#include<cstring>

注意!menset()賦值一般用于初始化,其按照字節進行復制,將參數轉化為二進制再填入!(int有四個字節,在轉成二進制再賦值的情況下可能會出問題)

因此在int類型的賦值中一般只能賦值為0或-1,不推薦其他值。

為地址str開始的n個字節賦值c,注意:是逐個字節賦值,str開始的n個字節中的每個字節都賦值為c。
(1) 若str指向char型地址,value可為任意字符值;
(2) 若str指向非char型,如int型地址,value的值只能是-1或0,因為-1和0轉化成二進制后每一位都是一樣的,設int型占4個字節,則-1=0XFFFFFFFF, 0=0X00000000。

memset初始化為無窮大

memset(a , 0x3f , sizeof a);

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

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

相關文章

基于論文的大模型應用:基于SmartETL的arXiv論文數據接入與預處理(三)

上一篇 介紹了數據接入處理的整體方案設計。本篇介紹基于SmartETL框架的流程實現。 5. 流程開發 5.1.簡單采集流程 從指定時間&#xff08;yy年 mm月&#xff09;開始&#xff0c;持續采集arXiv論文。基于月份和順序號&#xff0c;構造論文ID&#xff0c;進而下載論文PDF文件…

[Swift]Xcode模擬器無法請求http接口問題

1.以前偷懶一直是這樣設置 <key>NSAppTransportSecurity</key> <dict><key>NSAllowsArbitraryLoads</key><true/><key>NSAllowsArbitraryLoadsInWebContent</key><true/> </dict> 現在我在Xcode16.3上&#xff…

Python基礎總結(八)之循環語句

文章目錄 一、for循環1.1 for循環格式1.2 for ...else1.3 for...break1.4 for...continue 二、while循環2.1 while循環格式2.2 while...break2.3 while...continue2.4 while ...else 循環語句就如其名&#xff0c;就是重復的執行一段代碼&#xff0c;直到滿足退出條件時&#x…

vuex實現同一頁面radio-group點擊不同按鈕顯示不同表單

本文實現的是點擊單一規格和多規格兩個按鈕會在頁面顯示不同的表單 方法一 <!-- 單規格和多規格的切換 --> <el-form label-width"80px" class"text-align-left"><el-form-item label"商品規格"><!-- 監聽skus_type的改…

AI編寫的“黑科技風格、自動刷新”的看板頁面

以下的 index.html 、 script.js 和 styles.css 文件&#xff0c;實現一個具有黑科技風格、自動刷新的能源管理系統實時監控看板。 html頁面 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name&q…

Vim使用完全指南:從基礎到高效編輯

Vim使用完全指南&#xff1a;從基礎到高效編輯 一、Vim簡介與基本概念 Vim&#xff08;Vi IMproved&#xff09;是從vi發展出來的一個功能強大的文本編輯器&#xff0c;以其高效性和靈活性著稱&#xff0c;特別適合程序開發和系統管理任務。與常規文本編輯器不同&#xff0c;…

時序約束高級進階使用詳解三:Create_Clock

目錄 一、前言 二、設計示例 2.1 設計代碼 2.2 schematic 2.3 no overwriteing 2.4 約束到非時鐘引腳 三、Create_clock應用 3.1 時鐘輸入端口 3.2 7系列高速收發器輸出管腳 3.3 部分原語的輸出管腳 3.4 主時鐘路徑上創建主時鐘 3.5 虛擬時鐘 3.6 差分時鐘的約束 …

箱線圖(盒須圖)QCPStatiBox

一、QCPStatisticalBox 概述 QCPStatisticalBox 是 QCustomPlot 中用于繪制箱線圖(盒須圖)的類&#xff0c;可以顯示數據的五個關鍵統計量&#xff1a;最小值、第一四分位數(Q1)、中位數、第三四分位數(Q3)和最大值&#xff0c;以及可能的異常值。 二、主要屬性 屬性類型描述…

人形機器人馬拉松:北京何以孕育“領跑者”?

“機器人每跑一小步&#xff0c;都是人類科技的一大步”&#xff0c;這句對阿姆斯特朗登月名言的仿寫&#xff0c;恰如其分地詮釋了全球首場人形機器人半程馬拉松賽事的里程碑意義。 2025年4月19日&#xff0c;北京亦莊半程馬拉松暨人形機器人半程馬拉松圓滿結束。在總長21.09…

基于Python的推薦算法的電影推薦系統的設計

標題:基于Python的推薦算法的電影推薦系統的設計與實現 內容:1.摘要 本文圍繞基于Python的推薦算法的電影推薦系統展開研究。背景在于隨著電影數量的急劇增加&#xff0c;用戶在海量電影中找到符合自身喜好的影片變得困難。目的是設計并實現一個高效準確的電影推薦系統&#x…

【深度學習】詳解矩陣乘法、點積,內積,外積、哈達瑪積極其應用|tensor系列02

博主簡介&#xff1a;努力學習的22級計算機科學與技術本科生一枚&#x1f338;博主主頁&#xff1a; Yaoyao2024往期回顧&#xff1a;【深度學習】你真的理解張量了嗎&#xff1f;|標量、向量、矩陣、張量的秩|01每日一言&#x1f33c;: “腦袋想不明白的&#xff0c;就用腳想”…

面試常用基礎算法

目錄 快速排序歸并排序堆排序 n n n皇后問題最大和子數組爬樓梯中心擴展法求最長回文子序列分割回文串動態規劃求最長回文子序列最長回文子串單調棧雙指針算法修改 分割回文串滑動窗口棧 快速排序 #include <iostream> #include <algorithm>using namespace std;…

相對路徑和絕對路徑解析

在 Linux/Unix 和文件系統中&#xff0c;絕對路徑和相對路徑是描述文件或目錄位置的兩種方式&#xff0c;它們的核心區別在于路徑的起點和使用場景。以下是詳細對比&#xff1a; 目錄 1. 定義與起點 2. 符號與語法 3. 使用場景 4. 實際示例 示例 1&#xff1a;定位文件 示…

【算法數據結構】leetcode37 解數獨

37. 解數獨 - 力扣&#xff08;LeetCode&#xff09; 題目描述&#xff1a; 題目要求每一行 &#xff0c;每一列&#xff0c;每個3*3 的子框只能出現一次。每個格子的數字范圍1-9. 需要遍歷每個空格填入可能的數字&#xff0c;并驗證符合規則。如果符合就填入&#xff0c;不符…

Vector的學習

vector簡介 vector的相關文檔對于想深入了解的同學可以參考這個文檔進行學習。 vector是表示可變大小數組的序列容器。 就像數組一樣&#xff0c;vector也采用的連續存儲空間來存儲元素。也就是意味著可以采用下標對vector的元素進行訪問&#xff0c;和數組一樣高效。但是又不…

Vue常用指令入門

1. v-for 作用&#xff1a;用于遍歷對象或數組 注意&#xff1a;需要提供key屬性&#xff0c;可以提高性能和避免渲染錯誤&#xff0c;值通常為index或item.id <li v-for"(item, index) in items" :key"index">{{ item }} </li>2. v-if,v-el…

在機器視覺檢測中為何選擇線陣工業相機?

線陣工業相機&#xff0c;顧名思義是成像傳感器呈“線”狀的。雖然也是二維圖像&#xff0c;但極寬&#xff0c;幾千個像素的寬度&#xff0c;而高度卻只有幾個像素的而已。一般在兩種情況下使用這種相機&#xff1a; 1. 被測視野為細長的帶狀&#xff0c;多用于滾筒上檢測的問…

線性DP:最長上升子序列(子序列可不連續,子數組必須連續)

目錄 Q1&#xff1a;簡單遍歷 Q2&#xff1a;變式&#xff08;加大數據量&#xff09; Q1&#xff1a;簡單遍歷 Dp問題 狀態表示 f(i,j) 集合所有以第i個數結尾的上升子序列集合-f(i,j)的值存的是什么序列長度最大值max- 狀態計算 &#xff08;其實質是集合的劃分&#xff09;…

【Web前端技術】第二節—HTML標簽(上)

hello&#xff01;好久不見—— 做出一個屬于自己的網站&#xff01; 云邊有個稻草人-個人主頁 Web前端技術—本篇文章所屬專欄 目錄 一、HTML 語法規范 1.1 基本語法概述 1.2 標簽關系 二、HTML 基本結構標簽 2.1 第一個 HTML 網頁 2.2 基本結構標簽總結 三、網頁開發…

論文降重GPT指令-實側有效從98%降低到8%

步驟1&#xff1a;文本接收 指令&#xff1a; 請用戶提供需要優化的文本內容。 對文本進行初步分析&#xff0c;識別文本的基本結構和風格。 操作&#xff1a; 接收并分析用戶提交的文本。 步驟2&#xff1a;文本優化 2.1 連接詞處理 指令&#xff1a; 刪除或替換連接詞&#x…