1512A. Spy Detected!
给你一个由 n ( n≥3 ) 个正整数组成的数组 a 。已知在这个数组中,除了一个数之外,所有的数都是相同的(例如,在数组 [4,11,4,4] 中,除了一个数之外,所有的数都等于 4 )。
打印不相等元素的索引。数组中的数字从 1 开始编号。
输入
第一行包含一个整数 t ( 1≤t≤100 )。然后是 t个测试用例。
每个测试用例的第一行都包含一个整数 n ( 3≤n≤100 ) - 数组的长度 a 。
每个测试用例的第二行包含 n 个整数 a1,a2,…,a**n ( 1≤a**i≤100 )。
保证除了 a数组中的一个数字外,其他所有数字都相同。
输出
对于每个测试用例,输出一个整数 - 与其他元素不相等的元素的索引。
例如
输入
4
4
11 13 11 11
5
1 4 4 4 4
10
3 3 3 3 10 3 3 3 3 3
3
20 20 10
输出
2
1
5
3
解决方法
// codeforces
// 1512A. Spy Detected!
# include<iostream>
using namespace std;
int main()
{
int n, a, b, sum, m, t;
cin >> m;
for(int j = 0; j < m; j++)
{
cin >> n;
int c[n];
cin >> c[0];
a = c[0];
sum = a;
for(int i = 1; i < n; i++)
{
cin >> c[i];
sum = sum + c[i];
if(a != c[i])
{
b = c[i];
}
}
if(a+b*(n-1) == sum)
{
t = a;
}
else
{
t = b;
}
for(int i = 0; i < n; i++)
{
if(t == c[i])
{
cout << i+1 << endl;
}
}
}
return 0;
}