B3631 单向链表
【参考代码】
80%通过率
#include <bits/stdc++.h>
using namespace std;
int main()
{
list<int> list;
list.push_back(1);
int q;
cin>>q;
while(q--){
int operation;
cin>>operation;
if(operation == 1)
{
int x, y;
cin>>x>>y;
auto position = find(list.begin(), list.end(), x);
list.insert(++position, y);
}
if(operation == 2)
{
int x;
cin>>x;
auto position = find(list.begin(), list.end(), x);
position++;
if(position == list.end())
cout << 0 << endl;
else
cout << *position << endl;
}
if(operation == 3)
{
int x;
cin>>x;
auto position = find(list.begin(), list.end(), x);
position++;
list.erase(position);
}
}
return 0;
}
B3616 【模板】队列
【参考代码】
#include <bits/stdc++.h>
using namespace std;
int main()
{
queue<int> q;
int n;
cin>>n;
for(int i=0; i<n; i++)
{
int operation, x;
cin>>operation;
if(operation == 1)
{
cin>>x;
q.push(x);
}
if(operation == 2)
{
if(q.empty())
cout << "ERR_CANNOT_POP" << endl;
else
q.pop();
}
if(operation == 3)
{
if(q.empty())
cout << "ERR_CANNOT_QUERY" << endl;
else
cout << q.front() << endl;
}
if(operation == 4)
{
cout << q.size() << endl;
}
}
return 0;
}