晚风


私信TA

用户名:uq_24611172404

访问量:2491

签 名:

等  级
排  名 5234
经  验 1572
参赛次数 0
文章发表 35
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

解题思路:微信截图_20230329133423.png
注意事项:在本地跑出来的结果和测评的结果数据不一样,此题py数据处理有问题

参考代码:

t=int(input())

byte=0

for _ in range(t):

    s=input()

    if s.startswith('int '):

        cnt=s.count(',')

        if cnt==0:

            byte+=4

        else:

            byte+=(cnt+1)*4

    elif s.startswith('long '):

        cnt=s.count(',')

        if cnt==0:

            byte+=8

        else:

            byte+=(cnt+1)*8

    elif s.startswith('String '):

        s=s.replace(';','')

        b=s.replace('String ','')

        c=list(b.split(','))

        for x in c:

            a=str(x)

            idx1=a.find('=')+1

            idx2=len(a)-1

            byte+=idx2-idx1-1

    elif s.startswith('int[] '):

        s=s.replace(';','')

        b=s.replace('int[] ','')

        c=list(b.split(','))

        for x in c:

            a=str(x)

            idx1=a.find('[')+1

            idx2=a.find(']')

            d=x[idx1:idx2]

            num=int(''.join(d))

            byte+=num*4

    elif s.startswith('long[] '):

        s=s.replace(';','')

        b=s.replace('long[] ','')

        c=list(b.split(','))

        for x in c:

            a=str(x)

            idx1=a.find('[')+1

            idx2=a.find(']')

            d=x[idx1:idx2]

            num=int(''.join(d))

            byte+=num*8

gb=byte//1024**3

byte-=1024**3*gb

mb=byte//1024**2

byte-=1024**2*mb

kb=byte//1024

byte-=1024*kb

z=''

if gb>0:

    z+=f'{gb}GB'

if mb>0:

    z+=f'{mb}MB'

if kb>0:

    z+=f'{kb}KB'

if byte>0:

    z+=f'{byte}B'

print(z)


 

0.0分

1 人评分

  评论区

我C++也是AC官网,在这过不了
2024-04-03 18:51:11
  • «
  • 1
  • »