1_jingjing1
来源:互联网 发布:linux shell 输入 编辑:程序博客网 时间:2024/06/16 19:31
题目意思挺简单的,就是找到一组数中只出现一次的那个数。
第一次做,是排好序后再遍历查找,代码如下:
#include <stdio.h>#include <iostream>#include <algorithm>using namespace std;int num[ 3000000 ] = {-1};void search(int n) {int t = -1; for(int i = 1;i <= n;i ++) scanf("%d",&num[ i ]); sort(num + 1,num + n+1); for(int j = 1;j <= n;j ++){ if(num[ j-1 ] != num[ j ] && num[ j+1 ] != num[ j ]) { t = num[ j ];printf("%d ",t); } }}int main() { int n; cin >> n; search(n); return 0; }
一开始并不知道还有“异或”这种运算,经同学提点,改成如下:
#include <stdio.h>int main() {int n,num,t = 0;scanf("%d",&n);for(int i = 0;i < n;i ++) {scanf("%d",&num);t ^= num;}printf("%d",t);return 0;}慢慢进步吧,不期望一口气吃成一个胖子,嘿嘿
0 0