问题标题: 酷町堂:5035

1
0
已解决
潘孝宇
潘孝宇
初级光能
初级光能

NO.5035    最终得分:70     错误编码:RE

错误代码:

#include<iostream>
#include<list>
using namespace std;
list <int> a;
int n,t;bool f;
list <int>::iterator it;
int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>t;
        a.push_back(t);
    }while(cin>>t){
        it=a.begin();
        while(it!=a.end()){
            if(*it==t){
                f=1;
                break;
            }
            it++;
        }
        if(f)a.erase(it);
    }it=a.begin();
    while(it!=a.end())cout<<*(it++)<<' ';
    return 0;
}//请大佬找错!


0
已采纳
江见匀
江见匀
新手光能
新手光能

按这个改:

#include<iostream>

#include<list>

using namespace std;

list <int> a;

int n,t;bool f;

list <int>::iterator it;

int main(){

cin>>n;

for(int i=1;i<=n;i++){

cin>>t;

a.push_back(t);

}while(cin>>t){

it=a.begin();

while(it!=a.end()){

if(*it==t){

f=1;

        a.erase(it);

break;

}

it++;

}

}it=a.begin();

while(it!=a.end())cout<<*(it++)<<' ';

return 0;

}

0
0
康曦
康曦
中级光能
中级光能

核心

cin>>n;
    for(int i=1;i<=n;i++){
        cin>>t;
        l.push_back(t);
    }
    while(cin>>t){
        it=l.begin();
        while(it!=l.end()&&*it!=t) it++;
        if(it!=l.end()) l.erase(it);
    }
    for(it=l.begin();it!=l.end();it++){
        cout<<*it<<" ";
    }

定义

list<int> l;
list<int>::iterator it;

头文件:#include<list>

我要回答