題目要求給定乙個字串,然後將其按順序以之字排列,然後將字母串按行來輸出,其中之子字元迴路的行數由引數numrows控制。
比如,
example1:這個題目,我先對給出的兩個例子進行了分析,首先第一行和最後一行的相鄰元素在輸入字串中的位置都差了numrows*2-2,而中間行的字元在輸入字串的位置相差都是有規律的,比如example中的第二行間隔為4,2,4,2,4……,第三行間隔為2,4,2,4……。因此,也就是相鄰間隔值相加為numrows*2-2。因此,**如下所示:輸入 s= 「paypalishiring」,numrows=3, 輸出=」pahnaplsiigyir」
p a h n
a p l s i i g
y i r
example2:
輸入 s= 「paypalishiring」,numrows=4, 輸出=」pinalsigyahrpi」
p i n
a l s i g
y a h r
p i
c++:
@by_chandepire
string convert(string s, int numrows)
}for(k=numrows-1;kresult += s[k];
return result;
}
python:
@by_chandepire
defconvert
(self, s, numrows):
""" :type s: str
:type numrows: int
:rtype: str
"""result = ""
length = len(s)
if length <= numrows or numrows == 1:
return s
k = 0
temp = (numrows<<1) - 2
while k < length:
result = result + s[k]
k = k + temp
for i in range(1,numrows-1):
j = (i<<1)
k = i
while k < length:
result = result + s[k]
j = temp - j
k = k + j
k = numrows - 1
while kreturn result
CentOS 6 IPv6 關閉方法
方法一 centos 6 預設安裝後,ipv6是自動開啟的,但是現在ipv6還沒有普及基本用不到這個功能,建議關閉ipv6模組。下面介紹一下關閉方法。說明 藍色 命令名稱 淺綠 命令引數淺藍 選項 紫色 目錄 系統環境 centos 6.2 i686 1 檢視系統是否開啟ipv6 a 通過網絡卡屬性...
es6 最佳入門實踐 6
symbol是es6中一種新增加的資料型別,它表示獨一無二的值。es5中我們把資料型別分為基本資料型別 字串 數字 布林 undefined null 和引用資料型別 object 在es6中新增的symbol資料型別劃分到基本資料型別 為什麼會有這樣一種資料型別呢?別人給了你乙個定義好的物件 va...
iphone6以及iphone6plus適配
手頭維護的乙個老專案,因為需要從ios5.1開始支援,所以在頁面適配上基本上使用硬編碼和autoresizemask來實現iphone4 iphone5s的適配,情況看起來還算不錯。到了iphone6以及以上的機型情況就有些不同了。在補充了iphone6的default page之後,很多頁面右邊出...