首先很容易就可以发现这是一道大模拟然后就不做了。
虽然这是一道大模拟,但是他十分的水,话不多说,进入正轨。
第一眼看上去有点懵,多看几遍就可以发现它给你一串代码,他会定义许多变量与数组每种变量都有一个内存, int
是 4B
的内存, long
是 8B
的内存,而 string
的内存是通过它的长度来决定的,一个字符 1B
内存。
但是变量里会有逗号怎么办,其实我们仔细读题可以发现,每个变量都会用一个等于号赋值所以我们只需要搜等于号即可。
数组就是看是否有中括号,若有就看这个数组的数据类型的占用的空间再乘上这个数组的大小就是这个数组的空间。而数组中有逗号的话也没有关系,因为我们只有要搜中括号,所以搜到了逗号也是没有关系的。
说完了思路就可以写代码了,这里需要分情况讨论,但是看到各位大佬写的题解我觉得有一点点复杂了,其实可以大致分为三类: int long
变量, int long
数组,和 string
变量即可。
代码如下:
#include <bits/stdc++.h>
#define int long long//开个long long保险一点
using namespace std;
int t , ans , a[4];
string s , mp[4] = {
"GB" , "MB" , "KB" , "B"};
//输入字符串和内存字符串
void solve1(){
//整理数组内存
int m , num;//m为一个变量的内存,num为数组的大小
if(s[0] == 'i') m =