大家来找茬

Time Limit: 1000 ms Case Time Limit: 1000 ms Memory Limit: 64 MB

Total Submission: 627 Submission Accepted: 197

Description

cxlove很喜欢玩大家来找茬的游戏。

但是他对图像不敏感,他喜欢有关数字的游戏。

给n个正整数,其中有1个数和其它的n-1个数奇偶性不同。

你敢和cxlove比比吗,看谁先找出那个数。

Input

一个整数T,表示T组数据 (1<=T<=100)

对于每组数据:

一个整数n,表示n个正整数 (3<=n<=100)

n个正整数a1,a2……,an (1<=ai<=10000)

数据保证有且仅有1个数与剩下的数奇偶性不同。

Output

对于每一组数据,输出不同的数的下标,其中下标从1开始

Sample Input

2

5

1 2 3 5 7

5

2 4 6 8 1

Sample Output

2

5

题意分析

数据范围不大,可以开大数组来存储数据。然后读入一个数据,判断他是奇数还是偶数。若是奇数,奇数计数器+1,并将其数组内容置为0,反之偶数计数器+1,数组内容置为1。然后比较一下计数器大小,从数组中找出对应内容为0/1的即可。

代码总览

/*
Title:AOJ.602
Author:pengwill
Date:2016-11-14
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define max 10005
int a1[max],a2[max]; int main()
{
//freopen("in.txt","r",stdin);
int cnt1,cnt2,T,n,i;
scanf("%d",&T);
while(T--){
scanf("%d",&n);
cnt1 = cnt2 = 0;
for(i = 0;i<n;++i){
scanf("%d",&a1[i]);
if(a1[i] %2 == 0){
a2[i] = 0;
cnt1++;
}else{
a2[i] = 1;
cnt2++;
}
}
if(cnt1>cnt2){
for(i = 0;i<n;++i){
if(a2[i] == 1){
printf("%d\n",i+1);
}
}
}else{
for(i = 0;i<n;++i){
if(a2[i] == 0){
printf("%d\n",i+1);
}
}
}
}
return 0;
//fclose(stdin);
}
05-14 04:01