月老使命问题,求解释
Description cxlove曾经客串过月老(呵呵~~~只不过是给数字配对)。
两个整数拼接成一个新数字之后,如果是3的倍数,则我们定义为幸福配对。
现在有n个数字,月老的任务就是将其配对。
现在请你帮助月老计算出最多能够有多少个幸福配对。
例如:123和456可以拼接成123456,也可以组成456123。
注意:每个数字只能用一次
Input
一个整数 T,表示有 T 组测试数据。(1<=T<=40)
每组数据输入格式如下:
对于每一组数据,输入如下:
一个整数n (1<=n<=10000)
接下来一行,n个整数 a1,a2,a3……an (1<=ai<=1000000000)
Output
对于每一组数据,输出一个整数,表示最多配成多少对
Sample Input
2
3
1 2 3
4
1 1 4 4
Sample Output
1
0
我的代码如下:
#include <stdio.h>
#define min(x, y) (x < y ? x : y)
void main()
{
int cases;
scanf("%d", &cases);
while(cases--)
{
int n,i;
scanf("%d", &n);
int rem0, rem1, rem2;
rem0 = rem1 = rem2 = 0;
for (i = 0; i < n; ++i)
{
int a1;
scanf("%d", &a1);
if(a1 % 3 == 0)
++rem0;
if(a1 % 3 == 1)
++rem1;
if(a1 % 3 == 2)
++rem2;
}
printf("%d\n", rem0 / 2 + min(rem0, rem1));
}
}
运行结果为Wrong Answer,求解释
[ 本帖最后由 孤寂的小菜 于 2013-4-30 19:32 编辑 ]