CF-798B

B. Mike and strings
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

Mike has?n?strings?s1,?s2,?...,?sn?each consisting of lowercase English letters. In one move he can choose a string?si, erase the first character and append it to the end of the string. For example, if he has the string "coolmike", in one move he can transform it into the string "oolmikec".

Now Mike asks himself: what is minimal number of moves that he needs to do in order to make all the strings equal?

Input

The first line contains integer?n?(1?≤?n?≤?50) — the number of strings.

This is followed by?n?lines which contain a string each. The?i-th line corresponding to string?si. Lengths of strings are equal. Lengths of each string is positive and don't exceed?50.

Output

Print the minimal number of moves Mike needs in order to make all the strings equal or print??-?1?if there is no solution.

Examples
input
4
xzzwo
zwoxz
zzwox
xzzwo
output
5
input
2
molzv
lzvmo
output
2
input
3
kc
kc
kc
output
0
input
3
aa
aa
ab
output
-1
Note

In the first sample testcase the optimal scenario is to perform operations in such a way as to transform all strings into "zwoxz".

?

?

題意:

將所有字符串變成相等,只允許將最左邊的字符移到最右,問最少要移多少步。

若不能使所有相等,則輸出-1、

?

分別以每一個字符串為模板,將其他的字符串移成和當前字符串相等的情況,再找出步數最少的方案。

?

附AC代碼:

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 
 4 const int inf=1<<30;
 5 
 6 string s[60];
 7 
 8 int main(){
 9     int n,i,j,k,m;
10     cin>>n;
11     for(i=0;i<n;i++){
12         cin>>s[i];
13     }
14     int len=s[0].size();
15     int ans=inf;
16     for(i=0;i<n;i++){
17         int cnt=0;
18         for(j=0;j<n;j++){
19             for(m=0;m<len;m++){
20                 for(k=0;k<len;k++){
21                     if(s[i][k]!=s[j][(k+m)%len])
22                     break;
23                 }
24                 if(k==len)//只有len個都相等才表明移動m個字符后兩字符串相等 
25                 break;
26             }
27             if(m==len){//若m==len則表明不能匹配。 
28                 cnt=inf;
29                 break;
30             }
31             cnt+=m;
32         }
33         ans=min(ans,cnt);
34     }
35     if(ans==inf)
36     cout<<-1<<endl;
37     else
38     cout<<ans<<endl;
39     return 0;
40 } 

?

轉載于:https://www.cnblogs.com/Kiven5197/p/6770323.html

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

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

相關文章

微信小程序倒計時實現

思路&#xff1a;跟一般js倒計時一樣&#xff0c;主要在于this的變相傳遞。 實現效果&#xff1a; wxml文件部分代碼&#xff1a; common.js文件 : 引用頁JS文件: PS: 1.在data里初始化時間格式&#xff0c;是避免時間加載的第1秒顯示為空白&#xff0c;因為setTimeOut是在1s以…

基于Kubeadm的Flannel分析

Flannel概述 Flannel是將多個不同子網&#xff08;基于主機Node&#xff09;通過被Flannel維護的Overlay網絡拼接成為一張大網來實現互聯的&#xff0c;通過官方的一張網絡拓撲圖我們可以對其基本原理一目了然&#xff1a; 值得探討的是&#xff0c;flannel的這個overlay網絡支…

sensor的skipping and binning 模式

1、第一種理解 關于sensor的縮放存在兩種模式 binning mode 和skip mode skipping mode 就是把想要的數據采集上來 把其余的數據扔掉 如下所示 column skip 2 row skip 2 留下的就是白色的像素 黑色的像素丟掉。 binning mode 就是把相鄰的像素合成一個像素&#xff0c;然后再…

5 結構型模式之 - 適配器模式

5 結構型模式之 - 適配器模式 適配器模式的介紹&#xff1a;適配器模式在開發中使用率很高&#xff0c;適配器是將兩個不兼容的類融合在一起&#xff0c;它有點像粘合劑&#xff0c;將不同的東西通過一種轉換使得它們能夠協作起來。例如經常碰到兩個不相關的類之間進行交互&…

Android進程保活

凡是做過幾年Android開發的&#xff0c;都不能不面對進程保活這一問題。特別是這兩年&#xff0c;面對谷歌&#xff0c;國內定制ROM&#xff0c;安全軟件等多方圍剿的情況下&#xff0c;app在后臺保活的難度越來越大&#xff0c;可以說包括QQ、微信在內的所有app&#xff0c;都…

治安卡口攝像機與電警抓拍機之間有什么區別?

接下來小編和大家說說它們有哪些相同和不同的地方&#xff0c;供大家參考。 治安卡口&#xff1a; 卡口攝像機主要是用于城市道路或高速公路出入口、收費站等重點治安監控地段的全天候實時檢測與記錄收費站、交通或治安檢查站等地點。 治安卡口監控系統的前端部分主要由三個單元…

https證書互信解決方案—創建私有CA并申請證書

前言 https相較于http而言有很大的安全性&#xff0c;當我們一個服務開啟https并與之通信時&#xff0c;往往需要證書的認證&#xff0c;如果是瀏覽器訪問服務&#xff0c;只要在瀏覽器內設置信任證書即可&#xff0c;而如果是程序內訪問服務&#xff08;如java程序&#xff09…

[轉]Unity-移動設備可用的壓縮解壓縮源碼

原文&#xff1a;http://www.manew.com/thread-103250-1-1.html 最近在做客戶端數據的分離&#xff0c;不希望對項目有什么影響&#xff0c;也不太想用AssetBundle&#xff0c;太麻煩&#xff0c;就在網上找了找開源的C#壓縮算法&#xff0c;找來找去&#xff0c;發現不是不支持…

高亮顯示QSS文件

轉【作者&#xff1a;一去丶二三里 博客地址&#xff1a;http://blog.csdn.net/liang19890820】 簡述 語法高亮是文本編輯器用來顯示文本的&#xff0c;特別是源代碼&#xff0c;根據不同的類別來用不同的顏色和字體顯示。這個功能有助于編寫結構化的語言&#xff0c;例如&…

智能識別技術對電子警察設備的影響

電子警察是目前交通管理部門用的最多的一種監控管理系統。這類系統與傳統安防的監控設備有很大區別&#xff0c;原先的系統只能抓拍車輛圖片&#xff0c;準確率又低所以被交通管理部門慢慢的淘汰了&#xff0c;同業興創這款最新的設備系統&#xff0c;有它一個很優質的特點就是…

Mybatis緩存配置

pom文件配置: <dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.4.1</version> </dependency> <dependency><groupId>org.mybatis</groupId><artifactId>myba…

初入Linux,M35作業第一彈,500字感想

畢業以后&#xff0c;做過很多工作&#xff0c;一直比較迷茫。來這邊上課&#xff0c;其實是我的好同學推薦我來報班的&#xff0c;因為他本身是做運維的&#xff0c;運維前景還可以&#xff0c;而且我對這個也感興趣。有一種冷&#xff0c;叫你媽覺得你冷&#xff0c;明明單衣…

【轉】一篇比較清晰簡單的C++文件操作

from:http://www.vckbase.com/document/viewdoc/?id1439 用C進行簡單的文件I/O操作 原文出處&#xff1a;Simple File I/O Using C 序論 我曾發表過文件輸入輸出的文章&#xff0c;現在覺得有必要再寫一點。文件 I/O 在C中比烤蛋糕簡單多了。 在這篇文章里&#xff0c;我 會詳…

交通治安卡口監控系統解決方案

隨著社會經濟發展、城鎮建設速度的加快&#xff0c;流動人口不斷增加&#xff0c;城市中人口密度逐漸加大&#xff0c;給城市治安監管帶來很大的壓力。因此采用高清網絡攝像監控系統以科技手段提高執法監督效率&#xff0c;成為有力推進“和諧社會”構建的最有力辦法。 同業興創…

細說shiro之三:在獨立應用中使用shiro

官網&#xff1a;https://shiro.apache.org/ 1. 下載在非Web環境的獨立應用中使用Shiro時&#xff0c;只需要shiro-core組件。在Maven項目中的依賴配置如下&#xff1a; <dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-core</a…

高并發架構系列:Redis為什么是單線程、及高并發快的3大原因詳解

Redis的高并發和快速原因 1.redis是基于內存的&#xff0c;內存的讀寫速度非常快&#xff1b;2.redis是單線程的&#xff0c;省去了很多上下文切換線程的時間&#xff1b;3.redis使用多路復用技術&#xff0c;可以處理并發的連接。非阻塞IO 內部實現采用epoll&#xff0c;采用了…

2、C#基礎 - Visual Studio 的版本選擇和下載

有句話說&#xff1a;工欲善其事&#xff0c;必先利其器&#xff0c;我不推薦在學習一個語言時使用記事本練習&#xff0c;甚至說相當的排斥。當然了&#xff0c;你也可以選擇你自己喜歡的方式。本系列推薦使用的IDE為vs2017 community版&#xff0c;銀子不夠的同志不用怕&…

紅外攝像機的原理及選擇

一、紅外基本原理介紹 光是一種電磁波&#xff0c;它的波長區間從幾個納米&#xff08;1nm10-9m&#xff0c;十億分之一米&#xff09;到 1 毫米&#xff08;mm&#xff09;左右。人眼可見的只是其中一部分&#xff0c;我們稱其為可見光&#xff0c;可見光的波長范圍為 380nm …

第六章 預處理器

宏就是文字展開&#xff0c;實際中能夠展開寫出來發現錯誤。6.1 不能忽視宏定義中的空格 6.2 宏并非函數宏定義一個函數時&#xff0c;1、要把每一個參數用括號括起來2、同一時候也要把整個表達式括起來。3、要確保宏中的參數沒有副作用#define max(a,b) ((a)>(b)?(a):(b)…

oracle 數據庫中執行數據庫語句能找到數據,但是程序中卻抓取不到

oracle 數據庫中執行數據庫語句能找到數據&#xff0c;但是程序中卻抓取不到&#xff1f; 原因&#xff1a;數據庫中插入數據時沒有commit&#xff0c;執行COMMIT后就可以查詢到。轉載于:https://www.cnblogs.com/hanje/p/10140307.html