using System.Collections.Generic;
public static Program instance;
public string OrdenaArray(params string[] args)
var resultado = string.Empty;
var teste = Array.ConvertAll(args, int.Parse).ToList();
var ordenados = new List<int>();
foreach (var numeroAtual in teste)
for (int i = 0; i < ordenados.Count; i++)
var numeroBusca = ordenados[i];
if (numeroAtual < numeroBusca)
ordenados.Insert(i, numeroAtual);
ordenados.Add(numeroAtual);
resultado = string.Join(",", ordenados);
return resultado.ToString();
public string BuscaItensFaltantesNaSequencia(params string[] args)
var resultado = string.Empty;
var teste = Array.ConvertAll(args, int.Parse).ToList();
var ausentes = new List<int>();
for (int i = teste[0]; i <= teste[teste.Count - 1]; i++)
resultado = string.Join(",", ausentes);
return resultado.ToString();
public static void Main()
instance = instance ?? new Program();
var ordenado = instance.OrdenaArray("6", "3", "5", "4", "01", "7", "9");
var itensFaltantes = instance.BuscaItensFaltantesNaSequencia(ordenado.Split(','));
var resultadoOrdenadoEsperado = "1,3,4,5,6,7,9";
var resultadoItensFaltantesEsperado = "2,8";
Console.WriteLine(ordenado == resultadoOrdenadoEsperado ? $"CORRETO {ordenado} == {resultadoOrdenadoEsperado}" : $"INCORRETO {ordenado} != {resultadoOrdenadoEsperado}");
Console.WriteLine(itensFaltantes == resultadoItensFaltantesEsperado ? $"CORRETO {itensFaltantes} == {resultadoItensFaltantesEsperado}" : $"INCORRETO {itensFaltantes} != {resultadoItensFaltantesEsperado}");