题单练习 基础数据结构

A5328 | 团队全能赛

时间限制1s
内存限制128MB
通过 / 提交0/0

题目描述

题目背景


学校要参加“团队全能赛”。每支队伍需要 3 名同学,分别擅长 编程数学体育 各一名。每个同学 只擅长其中一项,而且 每个同学最多只能参加一支队伍

题目描述


共有 $n$ 名同学,第 $i$ 名同学的特长用 $t_i$ 表示:
  • $t_i=1$ 表示擅长 编程
  • $t_i=2$ 表示擅长 数学
  • $t_i=3$ 表示擅长 体育
请计算:最多能组成多少支由“编程 + 数学 + 体育”各一名的队伍,并给出一种可行的组队方案(写出每队 3 个同学的编号)。同学编号为 $1\sim n$,按输入顺序编号。

输入格式

  • 第一行:一个整数 $n$。
  • 第二行:$n$ 个整数 $t_1,t_2,\ldots,t_n$(每个都在 $\{1,2,3\}$ 中)。

输出格式

  • 第一行:整数 $w$,表示最多能组的队伍数。
  • 若 $w0$,接着输出 $w$ 行,每行 3 个整数,表示一支队伍中三名同学的编号(顺序任意)。
  • 若无法组队($w=0$),只输出一行 0

输入输出样例

输入 #1
7
1 3 1 3 2 1 2
输出 #1
2
3 5 2
6 7 4
输入 #2
4
2 1 1 2
输出 #2
0
C++ 编辑器
输入
输出