Codeforces Round #401 (Div. 2) D. Cloud of Hashtags

題目鏈接:D. Cloud of Hashtags

題意:

給你n個字符串,讓你刪后綴,使得這些字符串按字典序排列,要求是刪除的后綴最少

題解:

由于n比較大,我們可以將全部的字符串存在一個數組里面,然后記錄一下每個字符串的開始位置和長度,然后從下面往上對比。

如果str[i][j]<str[i+1][j],直接退出,因為這里已經成為字典序。

如果str[i][j]>str[i+1][j],那么就把str[i][j]=0,表示從這里開始的后綴全部刪掉。

str[i][j]==str[i+1][j]就繼續尋找。

注意:數組要開N*3,因為包括結束符。

 1 #include<bits/stdc++.h>
 2 #define F(i,a,b) for(int i=a;i<=b;++i)
 3 using namespace std;
 4 typedef long long ll;
 5 
 6 const int N=5e5+7;
 7 char str[N*3];
 8 int st[N],len[N],n,ed;
 9 
10 char find(int i,int j){return str[st[i]+j];}
11 
12 inline void output(int s)
13 {
14     int now=s;
15     while(1)
16     {
17         if(!str[now])return;
18         putchar(str[now++]);
19     }
20 }
21 
22 int main(){
23     scanf("%d",&n);
24     F(i,1,n)
25     {
26         st[i]=ed;
27         scanf("%s",str+ed);
28         len[i]=strlen(str+ed);
29         ed+=len[i]+1;
30     }
31     for(int i=n-1;i>0;i--)
32     {
33         F(j,1,len[i]-1)
34         {
35             int tmp=find(i+1,j)-find(i,j);
36             if(tmp<0)
37             {
38                 str[st[i]+j]=0;
39                 break;
40             }if(tmp>0)break;
41         }
42     }
43     F(i,1,n)output(st[i]),puts("");
44     return 0;
45 }
View Code

?

轉載于:https://www.cnblogs.com/bin-gege/p/6443768.html

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

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

相關文章

HALCON示例程序check_blister_mixed.hedv藥品膠囊缺陷檢測

HALCON示例程序check_blister_mixed.hedv藥品膠囊缺陷檢測 示例程序源碼&#xff08;加注釋&#xff09; 讀入圖片與顯示相關設置 dev_close_window () read_image (Image, ‘blister/blister_mixed_reference’) dev_open_window_fit_image (Image, 0, 0, -1, -1, WindowHan…

php類與對象

1.類與對象 對象&#xff1a;實際存在該類事物中每個實物的個體。$a new User(); 實例化后的$a 引用&#xff1a;php的別名&#xff0c;兩個不同的變量名字指向相同的內容 封裝: 把對象的屬性和方法組織在一個類&#xff08;邏輯單元&#xff09;里 繼承&#xff1a;以原有的類…

【深度學習系列】基礎知識、模型學習

基礎知識 原創 【深度學習】——訓練過程 原創 【深度學習】——BN層&#xff08;batch normalization&#xff09; 原創 【深度學習】——激活函數&#xff08;sigmoid、tanh、relu、softmax&#xff09; 原創 【深度學習】——損失函數 原創 【深度學習】——梯度下…

史陶比爾機器人的 LLI (Low Level Interface)

史陶比爾機器人的 LLI &#xff08;Low Level Interface&#xff09; 史陶比爾機器人擁有 Low Level Interface (LLI)接口選項. 在CS8C控制器的時代&#xff0c;LLI 接口仍然可用。這是一個選項接口。.這是除了VAL3編程語言之外的替代操作系統。通過C程序替代你的程序。 這里的…

陽獅集團與阿里巴巴全域營銷伙伴關系再升級:數據和業務合作將更緊密

3月6日&#xff0c;阿里巴巴集團與全球領先的廣告傳播集團陽獅集團在上海開啟了主題為“新局面新高度”新階段的合作溝通&#xff0c;未來雙方將進行更緊密的數據和業務層面的合作。阿里巴巴集團CMO、阿里媽媽總裁董本洪及陽獅媒體大中華區首席執行官張敬鸞就開放共贏達成共識&…

HALCON示例程序check_bottle_crate.hdev啤酒箱內酒瓶數檢測

HALCON示例程序check_bottle_crate.hdev啤酒箱內酒瓶數檢測 示例程序源碼&#xff08;加注釋&#xff09; 獲取系統關于“空白區域儲存的設置” get_system (‘store_empty_region’, StoreEmptyRegion)系統“空白區域儲存”設置為 ‘false’ set_system (‘store_empty_regi…

#undef 標識符

#undef 是在后面取消以前定義的宏定義 該指令的形式為 #undef 標識符 其中&#xff0c;標識符是一個宏名稱。如果標識符當前沒有被定義成一個宏名稱&#xff0c;那么就會忽略該指令。一旦定義預處理器標識符&#xff0c;它將保持已定義狀態且在作用域內&#xff0c;直到程序結束…

[轉]OpenGL庫介紹

原帖地址&#xff1a;http://blog.csdn.net/yyyuhan/archive/2008/01/15/2045009.aspx 開發基于OpenGL的應用程序&#xff0c;必須先了解OpenGL的庫函數。它采用C語言風格&#xff0c;提供大量的函數來進行圖形的處理和顯示。OpenGL庫函數的命名方式非常有規律。所有OpenGL函數…

SQL Server優化50法

查詢速度慢的原因很多&#xff0c;常見如下幾種&#xff1a; 1、沒有索引或者沒有用到索引(這是查詢慢最常見的問題&#xff0c;是程序設計的缺陷) 2、I/O吞吐量小&#xff0c;形成了瓶頸效應。 3、沒有創建計算列導致查詢不優化。 4、內存不足 5、網絡速度慢 …

HALCON示例程序check_fish_stick_dimension.hdev生魚棒尺寸測量;基于形態學的像素級精度尺寸測量

HALCON示例程序check_fish_stick_dimension.hdev基于形態學的像素級精度尺寸測量 示例程序源碼&#xff08;加注釋&#xff09; 關閉實時顯示更新 dev_update_off () 關閉窗口 dev_close_window () 讀入圖片 read_image (Image, ‘food/fish_sticks_raw_01’) 根據給定長寬…

單片機平臺的最小偏差圓弧插補算法

在CNC機床的G代碼中&#xff0c;最常見的有G0、G1、G2、G3代碼&#xff0c;分別表示直線和圓弧插補&#xff0c;直線插補對于單片機來說&#xff0c;比較容易實現&#xff0c;只需要將位移增量轉換為脈沖增量然后輸出給步進電機就可以了&#xff0c;但對于圓弧插補&#xff0c;…

javascript基礎--數組排序

字符串的排序 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>數組排序</title><script>var arr [fliar, asdf, dfe, loii, yhhl];arr.sort();alert(arr);</script> </head>&…

【轉】JS跨域(ajax跨域、iframe跨域)解決方法及原理詳解(jsonp)

這里說的js跨域是指通過js在不同的域之間進行數據傳輸或通信&#xff0c;比如用ajax向一個不同的域請求數據&#xff0c;或者通過js獲取頁面中不同域的框架中(iframe)的數據。只要協議、域名、端口有任何一個不同&#xff0c;都被當作是不同的域。 下表給出了相對http://store.…

Lua基本語法-lua與C#的交互(相當簡單詳細的例子)

lua腳本 與 C#的交互 本文提供全流程&#xff0c;中文翻譯。Chinar堅持將簡單的生活方式&#xff0c;帶給世人&#xff01;&#xff08;擁有更好的閱讀體驗 —— 高分辨率用戶請根據需求調整網頁縮放比例&#xff09; 1Lua And C# —— Lua 和 C#的交互準備工作 2C# Create Lu…

漫談程序員系列:千奇百怪的程序員

干開發時間長了&#xff0c;遇見好多好玩兒的程序員。 看看你躺槍了沒。 博客之星評選&#xff0c;點擊投我一票&#xff0c;謝謝。投過了也可以點哦&#xff0c;每天都可以投投一票。 留一手 有個哥們兒&#xff0c;在一合資公司做程序員&#xff0c;能力挺強&#xff0c;寫…

HALCON示例程序check_hazelnut_wafers.hdev威化餅干質量檢測(完整與否,是否破碎)

HALCON示例程序check_hazelnut_wafers.hdev威化餅干質量檢測&#xff08;完整與否&#xff0c;是否破碎&#xff09; 示例程序源碼&#xff08;加注釋&#xff09; 讀入圖片 read_image (Image, ‘food/hazelnut_wafer_01’) 關閉窗口 dev_close_window () 根據給定的長寬比…

Windows Media Center .MCL文件代碼執行漏洞(MS16-059)

blast 2016/06/21 13:180x00 簡介漏洞作者EduardoBraun Prado在今年早期發現了WMP的.MCL文件又存在一個可以導致遠程代碼執行的漏洞。為什么要說又呢&#xff0c;因為這個東西實在是“不爭氣”&#xff0c;同一個地方出現了多次繞過導致遠程代碼執行的問題。0x01 歷史A――MS1…

SCARA機器人與 DELTA機器人

1、SCARA機器人SCARA&#xff08;Selective Compliance Assembly Robot Arm&#xff0c;中文譯名&#xff1a;選擇順應性裝配機器手臂&#xff09;是一種圓柱坐標型的特殊類型的工業機器人。1978年&#xff0c;日本山梨大學牧野洋發明SCARA&#xff0c;該機器人具有四個軸和四個…

一直以來都沒直視的輪播-_-

一直以來做項目碰到輪播圖我都是去網站上找現成插件拿來用&#xff0c;現成的插件1是省時間&#xff0c;拿來改改尺寸改改參數就能直接用&#xff0c;2是現在的插件確實很強大&#xff0c;對于我一個剛剛學習前端的人來說&#xff0c;牛人寫的輪播我看懂也要花些功夫&#xff0…

HALCON示例程序circles.hdev邊界輪廓的圓形擬合

HALCON示例程序circles.hdev邊界輪廓的圓形擬合 小哥哥小姐姐覺得有用點個贊唄&#xff01; 示例程序源碼&#xff08;加注釋&#xff09; 讀入圖片 read_image (Image, ‘double_circle’)窗口初始化 dev_close_window () get_image_size (Image, Width, Height) dev_open…