**:
/*定義兩個字串變數:s,m,再定義兩種操作,
第一種操作:
m=ss=s+s //說明:s只會變為原來的2倍
第二中操作:
s=s+m
假設s,m初始化如下:
s="a"
m=s求最小的操作步驟數,可以將s拼接到長度等於n。
示例1:
輸入6,輸出3
示例2:
輸入4,輸出2
*//*
思路:第一種操作,s變為原來的1倍(說明偶數的時候適用)
*/#include using namespace std;
int main()
cout << cnt << endl;
return 0;
}
2017 08 22 今日頭條筆試題
有乙個值得分享的地方,是x排序之後對應y的問題 我用了乙個很大的陣列,以x為索引,y為陣列值,不需要用到map。其實也是因為我懶不想去學map操作了,下次試試用map。include include include using namespace std int main cin n x.clear...
今日頭條筆試題(一)
一列火車有n個車廂標記為1,2,3,4,5,6 n 現在因為某些原因,需要調整車廂的相對順序 例如需要將車廂順序調整為2,3,1,4,5,6 n 由於車廂龐大,且車廂只能停留在鐵軌上,所以不能隨心所欲的調整相對順序 現在只能利用兩條並行的鐵軌對車廂的順序進行調整 例如原序列為1,2的車廂 車廂1進入...
2018今日頭條筆試題 字元交換
level 2018演算法工程師筆試題 discription 字串s由小寫字母構成,長度為n。定義一種操作,每次都可以挑選字串中任意的兩個相鄰字母進行交換。詢問在至多交換m次之後,字串中最多有多少個連續的位置上的字母相同?第一行為乙個字串s與乙個非負整數m。1 s 1000,1 m 1000000...