可以用條件判斷先分三類再將字串依據題目做變化
如果想要美觀一點可以用自定義函數,參考如下
(一定有更好或簡單的方法,僅供參考◉‿◉)
def a(x):
s=""
for i in range(len(x)):
if i%2==0:
s+=x[i+1]
else:
s+=x[i-1]
return s
def b(x):
s=""
for i in range(len(x)//2):
ss=[x[2*i],x[2*i+1]]
ss.sort()
for j in ss:
s+=j
return s
def c(x):
s=""
s1=x[0:len(x)//2:1]
s2=x[len(x)//2::]
for i in range(len(x)//2):
s+=s1[i]
s+=s2[i]
return s
可以用條件判斷先分三類再將字串依據題目做變化
如果想要美觀一點可以用自定義函數,參考如下
(一定有更好或簡單的方法,僅供參考◉‿◉)
def a(x): #代號0的兩兩交換
s=""
for i in range(len(x)):
if i%2==0:
s+=x[i+1]
else:
s+=x[i-1]
return s
def b(x): #代號1的兩兩排序
s=""
for i in range(len(x)//2):
ss=[x[2*i],x[2*i+1]]
ss.sort()
for j in ss:
s+=j
return s
def c(x): #代號2的完美重排
s=""
s1=x[0:len(x)//2:1]
s2=x[len(x)//2::]
for i in range(len(x)//2):
s+=s1[i]
s+=s2[i]
return s
s=input()
k=int(input())
for i in range(k):
n=int(input())
if n==0:
s=a(s)
elif n==1:
s=b(s)
else:
s=c(s)
print(s)
可以用條件判斷先分三類再將字串依據題目做變化
如果想要美觀一點可以用自定義函數,參考如下
(一定有更好或簡單的方法,僅供參考◉‿◉)
def a(x):
s=""
for i in range(len(x)):
if i%2==0:
s+=x[i+1]
else:
s+=x[i-1]
return s
def b(x):
s=""
for i in range(len(x)//2):
ss=[x[2*i],x[2*i+1]]
ss.sort()
for j in ss:
s+=j
return s
def c(x):
s=""
s1=x[0:len(x)//2:1]
s2=x[len(x)//2::]
for i in range(len(x)//2):
s+=s1[i]
s+=s2[i]
return s
我自己是加了遇到兩個兩兩交換直接跳過
以及連續的兩兩排序可以只做一次
可以用條件判斷先分三類再將字串依據題目做變化
如果想要美觀一點可以用自定義函數,參考如下
(一定有更好或簡單的方法,僅供參考◉‿◉)
def a(x):
s=""
for i in range(len(x)):
if i%2==0:
s+=x[i+1]
else:
s+=x[i-1]
return s
def b(x):
s=""
for i in range(len(x)//2):
ss=[x[2*i],x[2*i+1]]
ss.sort()
for j in ss:
s+=j
return s
def c(x):
s=""
s1=x[0:len(x)//2:1]
s2=x[len(x)//2::]
for i in range(len(x)//2):
s+=s1[i]
s+=s2[i]
return s
我自己是加了遇到兩個兩兩交換直接跳過以及連續的兩兩排序可以只做一次
這樣遇到很多組的效率應該可以更好!👍