CSP-S T3 0分
  • 板块学术版
  • 楼主mutan
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/10/22 10:02
  • 上次更新2023/11/2 12:00:15
查看原帖
CSP-S T3 0分
749371
mutan楼主2023/10/22 10:02

考场想混个15分的,结果0分

#include <bits/stdc++.h>

using namespace std;

struct ele {
	int addr;
	int size;
	string name;
};
int main() {
	int i,n,op,sz;
	int addrnow = 0;
	string typ,name;
	int ta;
	vector<ele> memory;

	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	
	cin>>n;
	for(i=0;i<n;i++)
	{
		cin>>op;
		switch(op) {
			case 2:
				cin>>typ>>name;
				
				if(typ == "byte") sz = 1;
				if(typ == "short") sz = 2;
				if(typ == "int") sz = 4;
				if(typ == "long") sz = 8;
				memory.push_back({addrnow,sz,name});
				addrnow += sz;
				break;
			case 3:
				cin>>name;
				for(auto &iter:memory) {
					if(iter.name == name) {
						cout<<iter.addr<<endl;
					}
				}
				break;
			case 4:
				cin>>ta;
				if(ta >= addrnow) {
					cout<<"ERR"<<endl;
					break;
				}
				for(auto &iter:memory) {
					if(iter.addr <= ta && iter.addr + iter.size > ta) {
						cout<<iter.name<<endl;
						break;
					}
				}
				break;
			default:
				break;
				
		}
	}

	return 0;
}```
2023/10/22 10:02
加载中...