Description
Whoooa! There is a spy in Marjar University. All we know is that the spy has a special ID card. Please find him out!
Input
There are multiple test cases. The first line of input contains an integer T indicating the number of test cases. For each test case:
The first line contains a integer N (3 ≤ N ≤ 100), which describes that there are N students need to be checked.
The second line contains N integers indicating the ID card number of N students. All ID card numbers are 32-bit integers.
Output
For each test case, output the ID card number which is different from others.
Sample Input
3 10 1 1 1 1 1 1 1 1 6 1 3 9 9 8 5 90016 90016 90016 2009 90016
Sample Output
6 8 2009
解题思路:
一个很low的解法,对于当前数如果他与前一个相同且与后一个不同则后一个为要找的数,
细节处理:
循环为从2到n-1,对于a[2],a[1]特殊处理
代码:
#include <iostream>
#include<vector>
#include<map>
#include<string>
using namespace std;
int main()
{
int t,i,n;
cin>>t;
while(t--)
{
int a[105];
cin>>n;
for(i=1;i<=n;i++)
{cin>>a[i];}
a[0]=a[1]; a[n+1]=a[n];
for(i=2;i<n;i++)
{
if(a[i]==a[i-1]&&a[i]!=a[i+1]){ cout<<a[i+1]<<endl;break;}
else { if(a[2]!=a[1]&&a[2]==a[3]){cout<<a[1]<<endl;break;}
if(a[2]!=a[1]&&a[1]==a[3]) {cout<<a[2]<<endl; break;}}
}
}
return 0;
}