P1469 找筷子

 

 题目已经说了限制4MB,那我们一定不要用数组,肯定会超,要尽可能的缩小内存

 

用异或来解决

代码如下:

#include<cstdio> 
//#include<iostream>
//using namespace std;
int main(){
    int n,a;
    scanf("%d",&n);
    int ans=0;
    for(int i=0;i<n;i++){
//    cin>>a;
    scanf("%d",&a);
    ans^=a;
    }
//    cout<<ans<<endl;
    printf("%d",ans);
    return 0;
}

看见我的注释没,让我体会到scanf和printf的确实比cin,cout快很多

要是非要用cin,cout,那么请加上两句喔~~(像这种没有输入输出流的可以用,有的话用这两句很可能会出错)

代码如下;

#include<cstdio> 
#include<iostream>
using namespace std;
int main(){
    ios::sync_with_stdio(false);
    cin.tie(0);
    int n,a;
    cin>>n;
    int ans=0;
    for(int i=0;i<n;i++){
    cin>>a;
    ans^=a;
    }
    cout<<ans<<endl;
    return 0;
}

 

posted @ 2020-05-27 11:10  miao-xixixi  阅读(112)  评论(0编辑  收藏  举报