好好玩下去


私信TA

用户名:uq_65463553453

访问量:4957

签 名:

人生如游戏

等  级
排  名 279
经  验 5612
参赛次数 0
文章发表 108
年  龄 0
在职情况 教师
学  校 集美大学
专  业 通信工程

  自我简介:

游戏也要好好打才能赢的

解题思路:太搞高兴了,在poj那里通不过,来这里一下就通过了感谢感谢

用了一个半小时,太久了,中途还是遇到了很多问题,还是参考了蛇形矩阵

注意事项:

参考代码:

##l3=[]

##for i in range(26):

l=list(input().split())

##print(l)

aa=r=int(l[0])

bb=c=int(l[1])

del(l[0])

del(l[0])

##print(l,r,c)

##4 4 ACM

l1=''

nl=len(l)

i=0

while nl>0:

##    print(l)

    for j in l[0]:

        

        l1+=bin(ord(j)-64)[2::].zfill(5)

##        print(l1)

    del(l[0])

    nl=len(l)

    if nl==0:

        break

    else:

        l1+='00000'#前面这里得到加密以后的字符串其实也测试了很久

l4=[[0 for i in range(c)]for j in range(r)]

##print(l4)

nl1=len(l1)

##print(nl1)

l4[0][0]=l1[0]

##print(l1[4])

i=0

j=0

x=0

q=1

while q<nl1:

    while j+1<c:

        j+=1

        l4[i][j]=l1[q]

        q+=1

        if q==nl1:

            break#懂得用,刚开始要删除字符串里面的字符,不知道怎么删除,现在还是不知道,值得用家的,搜了一下感觉懂了一点,和我之前的想法一样,只是自己不会用,替换成啥都没有replace函数

##        print(q)

    if q==nl1:

        break#这个添加了两次,才能跳出循环

    while i+1<r:

        i+=1

        l4[i][j]=l1[q]

        q+=1

        if q==nl1:

            break

    if q==nl1:

        break

    while j-1>=x:

        j-=1

        l4[i][j]=l1[q]

        q+=1

        if q==nl1:

            break

    if q==nl1:

        break

    while i-1>x:

        i-=1

        l4[i][j]=l1[q]

        q+=1

        if q==nl1:

            break

    if q==nl1:

        break

    r-=1

    c-=1

    x+=1

##print(l4)

for i in range(aa):#刚开始循环还用RC忘记RC前面已经被剪掉了,已经不是一开人头的RC了,后面检查才发现,要懂得用print检查

    for j in range(bb):

        print(int(l4[i][j]),end='')

    


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区