# coding=utf-8
# This is a sample Python script.
# Press Shift+F10 to execute it or replace it with your code.
# Press Double Shift to search everywhere for classes, files, tool windows, actions, and settings.
class Solution(object):
def convert(self, s, numRows):
"""
:type s: str
:type numRows: int
:rtype: str
"""
def index_s(i,numsRows):
"""
输入i和行数确定最终输出的行列坐标
2n-1为周期,i与周期取模remainder,i与周期的商quotient
remainder是0~n和n+1~2n-1,
"""
period_N=2*numsRows-2
#print 'period_N=%s'%period_N
i_remainder=i%period_N
i_quotient=i/period_N
#print 'i_remainder=%s'%i_remainder
if i_remainder<numsRows:
c=i_quotient*period_N
r=i_remainder
print '竖行'
else:
c=i_quotient*period_N+(i_remainder-numsRows+1)*2#对了
r=period_N-i_remainder#对了
print '回行'
print '第%s周期'%i_quotient
return c,r
dict_s=[]
for i in range(len(s)):
print 's[%s]=%s'%(i,s[i])
c,r=index_s(i,numRows)
dict_s.append([c,r,s[i]])
print dict_s
# for i in range(numRows):
# try:
a=Solution()
s="PAYPALISHIRING"
numRows=4
a.convert(s,numRows)
结果他不是打印矩阵啊!!!