public void Run() { PrintProblem(); Console.WriteLine("Number of queries:"); a = long.Parse(Console.ReadLine()); List <List <int> > d = new List <List <int> >(); Console.WriteLine("Queries:"); for (int i = 0; i < a; i++) { d[i] = new List <int>(System.Array.ConvertAll(Console.ReadLine().Split(' '), arrTemp => Convert.ToInt32(arrTemp))); } List <int> result = FrequencyQueries.freqQuery(d); Console.WriteLine(); Console.WriteLine("Result:"); foreach (var c in result) { Console.WriteLine(c); } Console.ReadKey(); }
public void FrequencyQueriesTest2() { List <int> result = new List <int>(); List <List <int> > queries = new List <List <int> > { new List <int> { 3, 4 }, new List <int> { 2, 1003 }, new List <int> { 1, 16 }, new List <int> { 3, 1 } }; result = FrequencyQueries.freqQuery(queries); Assert.AreEqual(0, result[0]); Assert.AreEqual(1, result[1]); }
public void FrequencyQueriesTest3() { List <int> result = new List <int>(); List <List <int> > queries = new List <List <int> > { new List <int> { 1, 3 }, new List <int> { 2, 3 }, new List <int> { 3, 2 }, new List <int> { 1, 4 }, new List <int> { 1, 5 }, new List <int> { 1, 5 }, new List <int> { 1, 4 }, new List <int> { 3, 2 }, new List <int> { 2, 4 }, new List <int> { 3, 2 } }; result = FrequencyQueries.freqQuery(queries); Assert.AreEqual(0, result[0]); Assert.AreEqual(1, result[1]); Assert.AreEqual(1, result[2]); }
public void Test1() { // Arrange List <List <int> > queries = new List <List <int> > { new List <int> { 1, 1 }, new List <int> { 2, 2 }, new List <int> { 3, 2 }, new List <int> { 1, 1 }, new List <int> { 1, 1 }, new List <int> { 2, 1 }, new List <int> { 3, 2 } }; // Act (Dictionary <int, int> dataDict, Dictionary <int, int> frequencyDict, List <int> resultList) = FrequencyQueries.FrequeryQuery(queries); // [0, 1] // Assert Dictionary <int, int> expectedDataDict = new Dictionary <int, int> { [1] = 2 }; Dictionary <int, int> expectedFrequencyDict = new Dictionary <int, int> { [1] = 1 }; List <int> expectedResultList = new List <int> { 0, 1 }; Assert.Equal(expectedResultList, resultList); Assert.Equal(expectedResultList, resultList); Assert.Equal(expectedResultList, resultList); }
public void Test8() { // Arrange List <List <int> > queries = new List <List <int> > { new List <int> { 1, 2 }, new List <int> { 3, 1 }, new List <int> { 2, 1 }, new List <int> { 2, 2 }, new List <int> { 3, 1 } }; // Act (Dictionary <int, int> dataDict, Dictionary <int, int> frequencyDict, List <int> resultList) = FrequencyQueries.FrequeryQuery(queries); // Assert Dictionary <int, int> expectedDataDict = new Dictionary <int, int>(); Dictionary <int, int> expectedFrequencyDict = new Dictionary <int, int>(); List <int> expectedResultList = new List <int> { 1, 0 }; Assert.Equal(expectedDataDict, dataDict); Assert.Equal(expectedFrequencyDict, frequencyDict); Assert.Equal(expectedResultList, resultList); }
public void Test5() { // Arrange List <List <int> > queries = new List <List <int> > { new List <int> { 1, 1 }, new List <int> { 1, 2 }, new List <int> { 1, 3 }, new List <int> { 1, 4 }, new List <int> { 1, 5 }, new List <int> { 3, 1 } }; // Act (Dictionary <int, int> dataDict, Dictionary <int, int> frequencyDict, List <int> resultList) = FrequencyQueries.FrequeryQuery(queries); // Assert Dictionary <int, int> expectedDataDict = new Dictionary <int, int> { [1] = 1, [2] = 1, [3] = 1, [4] = 1, [5] = 1 }; Dictionary <int, int> expectedFrequencyDict = new Dictionary <int, int> { [1] = 5 }; List <int> expectedResultList = new List <int> { 1 }; Assert.Equal(expectedDataDict, dataDict); Assert.Equal(expectedFrequencyDict, frequencyDict); Assert.Equal(expectedResultList, resultList); }
public void Frequencies() { var test = new FrequencyQueries(); test.Run(); }