XZIT20210907149 @ 2022-03-29 15:17:37
#include<bits/stdc++.h>
using namespace std;
#define max 100005
struct locker{
vector<int> num,k;
int s;
}locker1[max];
int main()
{
int n,q;
cin>>n>>q;
int a,i,j,k;
for(int h=0;h<q;h++){
cin>>a;
if(a==1){
cin>>i>>j>>k;
locker1[i].s++;
locker1[i].num.push_back(j);
locker1[i].k.push_back(k);
}
else{
cin>>i>>j;
for(int h=locker1[i].s-1;h>=0;h--){
if(locker1[i].num[h]==j){
cout<<locker1[i].k[h]<<endl;
break;
}
}
}
}
}
#include<bits/stdc++.h>
using namespace std;
#define max 100005
struct locker{
vector<int> num,k;
}locker1[max];
int main()
{
int n,q;
cin>>n>>q;
int a,i,j,k;
for(int h=0;h<q;h++){
cin>>a;
if(a==1){
cin>>i>>j>>k;
locker1[i].num.push_back(j);
locker1[i].k.push_back(k);
}
else{
cin>>i>>j;
for(int h=0;h<q;h++){
if(locker1[i].num[h]==j){
cout<<locker1[i].k[h]<<endl;
break;
}
}
}
}
}
by jiangtaizhe001 @ 2022-03-29 15:29:49
你已经是一个成熟的 OIer 了,你要学会如何肉眼来分辨两篇代码的细微区别(尽管这两篇代码的区别不是非常细微)
by lanretE @ 2022-03-29 15:45:01
@XZIT20210907149 因为后面的元素可能与之前重复,说明该柜子的某个格子存放的物品有更新。
所以必须从后往前循环