日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

How Much Memory Your Code Is Using? Gym - 101955J

發布時間:2023/12/3 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 How Much Memory Your Code Is Using? Gym - 101955J 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

How Much Memory Your Code Is Using? Gym - 101955J

題意:

t組數據,每組數據會有n個定義類型的方式,給你每個類型所占字節,問一共占了多少字節,最終答案按照Kibibyte單位輸出,并向上取整

題解:

直接模擬就行,記得判斷定義數組的情況,模擬題,全場最好做的題

代碼:

#include <bits/stdc++.h> using namespace std; int k; int n; int cnt=0; int main() {scanf("%d",&k);while(k--){long long ans=0;scanf("%d\n",&n);string a;while(n--){getline(cin,a);if(strstr(a.data(),"[")&&strstr(a.data(),"]")){int bas=0;if(strstr(a.data(),"long long ")){bas=8;}else if(strstr(a.data(),"long double ")){bas=16;}else if(strstr(a.data(),"bool ")){bas=1;}else if(strstr(a.data(),"char ")){bas=1;}else if(strstr(a.data(),"__int128 ")){bas=16;}else if(strstr(a.data(),"int ")){bas=4;}else if(strstr(a.data(),"double ")){bas=8;}else if(strstr(a.data(),"float ")){bas=4;}string kk;int f=0;for(auto i:a){if(i==']'){f=0;}if(f==1){kk.push_back(i);}if(i=='['){f=1;}}int pp=atoi(kk.data());ans=ans+(long long)pp*bas;}else{if(strstr(a.data(),"long long ")){ans+=8;}else if(strstr(a.data(),"long double ")){ans+=16;}else if(strstr(a.data(),"bool ")){ans+=1;}else if(strstr(a.data(),"char ")){ans+=1;}else if(strstr(a.data(),"__int128 ")){ans+=16;}else if(strstr(a.data(),"int ")){ans+=4;}else if(strstr(a.data(),"double ")){ans+=8;}else if(strstr(a.data(),"float ")){ans+=4;}}}printf("Case #%d: ",++cnt);if(ans%1024==0){printf("%d\n",ans/1024);}else{ans=ans/1024;ans++;printf("%d\n",ans);}}return 0; }

總結

以上是生活随笔為你收集整理的How Much Memory Your Code Is Using? Gym - 101955J的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。