STL sector 應用

 1 #include <iostream>
 2 #include <string>
 3 #include <vector>
 4 #include <cstdio>
 5 using namespace std;
 6 int n;
 7 vector<int> pile[30];
 8 
 9 //找到a所在pile和height,以應用的形式返回調用者,
10 void find_block(int a,int &p,int &h)
11 {
12     for(p=0;p<n;p++)
13         for(h=0;h<pile[p].size();h++)
14             if(pile[p][h]==a)
15     return ;
16 }
17 
18 void clear_above(int p,int h)
19 {
20     for(int i=h+1;i<pile[p].size();i++)
21     {
22         int b=pile[p][i];
23         pile[b].push_back(b);
24     }
25     pile[p].resize(h+1);
26 }
27 void pile_onto(int p,int h,int p2)
28 {
29     for(int i=h;i<pile[p].size();i++) //pile[p].size()的容量大小
30         pile[p2].push_back(pile[p][i]);
31     pile[p].resize(h);//pile[p]的容量改成h大小
32 }
33 void print()
34 {
35     for(int i=0;i<n;i++)
36     {
37         printf("%d:",i);
38         for(int j=0;j<pile[i].size();j++)
39             printf(" %d",pile[i][j]);
40         printf("\n");
41     }
42 }
43     
44 
45 int main()
46 {
47     int a,b;
48     scanf("%d",&n);
49     string s1,s2;
50     for(int i=0;i<n;i++)    
51         pile[i].push_back(i);
52     while(cin>>s1>>a>>s2>>b)
53     {
54         int pa,pb,ha,hb;
55         find_block(a,pa,ha);
56         find_block(b,pb,hb);
57         if(pa==pb)
58             continue;
59         if(s2=="onto")  clear_above(pb,hb);
60         if(s1=="move")  clear_above(pa,ha);
61         pile_onto(pa,ha,pb);
62         print();
63     }
64     
65     return 0;
66 }

vector類:

pile[p].size()看容量大小

pile[p].resize(n)調整vector容器的大小

pile[p].empty() 判斷是否為空
begin()和end()函數--返回第一個元素和最后一個元素位置

front()和back()函數返回vector 中第一個元素和最后一個元素

push_back(x)和pop_back()在vector中最后插入一個元素和刪除一個元素

vector 可以和數組一樣,用下表表示
?

轉載于:https://www.cnblogs.com/WDKER/p/5471091.html

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

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

相關文章

將Jersey與Spring整合

Spring提供了很多好處&#xff0c;并通過其依賴項注入機制&#xff0c;應用程序生命周期管理和Hibernate支持&#xff08;僅舉幾例&#xff09;促進了最佳實踐。 另外&#xff0c;當您想擁有干凈的類似于REST的服務器端JSON Api時&#xff0c;我發現Jersey非常方便。 本文簡要介…

JAVAWEB 生成excel文字在一格顯示兩位不變成#號

在用java生成excel的時候會發現這種問題&#xff0c; 如果是人家給的模板還好&#xff0c;如果不是模板&#xff0c;而是通過代碼生成的話&#xff0c; 就需要進行處理了&#xff0c; 一個小單元格&#xff0c;如果是一位的話&#xff0c;如1-9顯示沒有問題&#xff0c;一旦是兩…

力扣面試題 01.07. 旋轉矩陣

給你一幅由 N N 矩陣表示的圖像&#xff0c;其中每個像素的大小為 4 字節。請你設計一種算法&#xff0c;將圖像旋轉 90 度。 不占用額外內存空間能否做到&#xff1f; 代碼一 思路&#xff1a;對于矩陣中第 ii 行的第 jj 個元素&#xff0c;在旋轉后&#xff0c;它出現在倒數…

依賴注入–手動方式

依賴注入是一種將行為與依賴解決方案分開的技術。 用簡單的話來說&#xff0c;它允許開發人員定義具有特定功能的類&#xff0c;這些功能取決于各種協作者&#xff0c;而不必定義如何獲取對這些協作者的引用。 以此方式&#xff0c;實現了各個組件之間的解耦&#xff0c;并且通…

一個疏忽引發的思考!(strerror)

前幾天寫代碼因為自己的疏忽導致一遍又一遍的Segmentation fault (core dumped)。該問題是因為strerror&#xff08;errno&#xff09;返回的指針指向非法的內存導致程序打印錯誤時崩潰。 嘗試數次無果&#xff0c;為了進度。簡單粗暴的換成了perror(str)。今天忙里偷閑&#x…

力扣面試題 01.08. 零矩陣

編寫一種算法&#xff0c;若M N矩陣中某個元素為0&#xff0c;則將其所在的行與列清零 代碼一思路&#xff1a; 第一次遍歷時記錄&#xff0c;用兩個布爾類型數組標記行和列中是否有0元素&#xff1b; 第二次遍歷時置零 class Solution {public void setZeroes(int[][] matr…

Java最佳實踐–字符串性能和精確字符串匹配

在使用Java編程語言時&#xff0c;我們將繼續討論與建議的實踐有關的系列文章&#xff0c;我們將討論String性能調優。 我們將專注于如何有效地處理字符串創建&#xff0c; 字符串更改和字符串匹配操作。 此外&#xff0c;我們將提供我們自己的用于精確字符串匹配的最常用算法的…

mac下開發環境常用操作與命令

【1】 修改hosts文件 vim /private/etc/hosts轉載于:https://www.cnblogs.com/zsmynl/p/4714492.html

keil里面填數據

編譯后寄存器和堆棧的內存數據可以直接寫進去的。 寄存器&#xff0c;雙擊就可以&#xff0c;注意里面是十六進制 堆棧&#xff0c;也是十六進制&#xff0c;八位的 00 00 00 00 &#xff0c;但這個是從右到左的&#xff0c;比如0x00000006 應該填 06 00 00 00 把數據取出來 取…

力扣498. 對角線遍歷

給你一個大小為 m x n 的矩陣 mat &#xff0c;請以對角線遍歷的順序&#xff0c;用一個數組返回這個矩陣中的所有元素。 代碼思路&#xff1a;以第一行和右邊最后一列作為每輪的開始元素&#xff0c;先用temp存儲&#xff0c;全部按 從左上到右下 的順序遍歷&#xff0c;但是…

調試生產服務器– Eclipse和JBoss展示

您是否編寫有錯誤的代碼&#xff1f; 不&#xff0c;當然不。 對于我們其余的確實會編寫帶有錯誤的代碼的凡人&#xff0c;我想解決一個非常敏感的問題&#xff1a;調試在生產服務器上運行的應用程序。 因此&#xff0c;您的應用程序已準備好進行部署。 單元測試全部成功&…

ubuntu server獲取并自動設置最快鏡像的方法

一&#xff0c;安裝方法1 add-apt-repository ppa:ossug-hychen/getfastmirrorapt-get install getfastmirror 如果添加了臨時源&#xff0c;這樣移除add-apt-repository --remove ppa:ossug-hychen/getfastmirror 二&#xff0c;安裝方法2 wget -O getfastmirror-master.zip h…

linux之x86裁剪移植---ffmpeg的H264解碼顯示(420、422)

在虛擬機上yuv420可以正常顯示 &#xff0c;而945&#xff08;D525&#xff09;模塊上卻無法顯示 &#xff0c;后來驗證了directdraw的yuv420也無法顯示 &#xff0c;由此懷疑顯卡不支持 &#xff0c;后把420轉換為422顯示。420顯示如下&#xff1a;/* 編譯命令&#xff1a;arm…

Spring依賴注入技術的發展

回顧Spring框架的歷史&#xff0c;您會發現實現依賴注入的方式在每個發行版中都在增加。 如果您使用該框架已經超過一個月&#xff0c;那么在這篇回顧性文章中可能不會發現任何有趣的東西。 除了Scala中的最后一個示例&#xff0c;沒有其他希望&#xff0c;這種語言在Spring中意…

JS encode decode

網上查到的全都是escape&#xff0c;和需要的編碼不是一回事&#xff0c;好不容易找到的結果 保存下來以備以后使用js對文字進行編碼涉及3個函數&#xff1a;escape,encodeURI,encodeURIComponent&#xff0c;相應3個解碼函數&#xff1a;unescape,decodeURI,decodeURIComponen…

流媒體服務器 筆記

1.sip服務器回SBC Port Unreachable 說明轉碼器接收RTCP的端口沒有打開 轉載于:https://www.cnblogs.com/luoyinjie/p/7219359.html

力扣151. 翻轉字符串里的單詞

給你一個字符串 s &#xff0c;逐個翻轉字符串中的所有 單詞 。 單詞 是由非空格字符組成的字符串。s 中使用至少一個空格將字符串中的 單詞 分隔開。 請你返回一個翻轉 s 中單詞順序并用單個空格相連的字符串。 沒思路&#xff0c;看到的官方給的&#xff0c;簡潔明了&…

Spring 3 HornetQ 2.1集成教程

通過Spring框架使用JBoss的新超高性能消息傳遞系統。 HornetQ是一個開放源代碼項目&#xff0c;用于構建多協議&#xff0c;可嵌入&#xff0c;非常高性能的集群異步消息傳遞系統。 它是用Java編寫的&#xff0c;并且可以在具有Java 5或更高版本運行時的任何平臺上運行。 Horn…

B/S和C/S架構圖解

軟件&#xff1a;B/S和C/S兩種架構模式。接下來用三張圖片解釋&#xff0c;什么是B/S什么是C/S。 圖片一&#xff1a;軟件架構模式 圖片二&#xff1a;C/S結構模式 圖片三&#xff1a;B/S結構模式 相信圖解勝過冗長文字的解釋&#xff0c;什么是B/S什么是C/S一目了然。 轉載于:…

557. 反轉字符串中的單詞 III

給定一個字符串&#xff0c;你需要反轉字符串中每個單詞的字符順序&#xff0c;同時仍保留空格和單詞的初始順序。 class Solution {public String reverseWords(String s) {StringBuffer res new StringBuffer();int length s.length();int i 0;while(i < length){int …