序列转换

时间:2015-05-14 21:30:38

标签: sequence

请你帮我理解这个问题:

  

转换N (1 ≤ N ≤ 20)输入数字的输入序列   相同数字的子序列将替换为第一个   子序列的数量。每个输入数字都在[1, 2 000 000 000]范围内。

     

例如,输入序列1 2 2 3 1 1 1 4 4被转换为   1 2 3 1 4

     

输入:首先,给出测试用例的数量T.每个测试用例都是   使用两行指定。第一个包含数字N和   第二个包含序列号。

     

输出:已转换的序列。每个测试用例的结果应该是   单独打印。

1 个答案:

答案 0 :(得分:2)

  

例如,输入序列1 2 2 3 1 1 1 4 4被转换为1 2 3 1 4。

看起来想法是在创建输出时删除彼此相邻的重复数字。

您可以通过保持状态变量记录之前的值来实现。获得新值后,将其与状态值进行比较。如果相同,请跳过。如果不同,则输出并更新状态变量。请记住将状态变量初始化为输入流中未找到的值(例如,-1在这种情况下应该起作用)。