mellowdeep

Magic Car Numbers

Dec 7th, 2015
209
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.65 KB | None | 0 0
  1. using System;
  2.  
  3. class MagicCarNumbers
  4. {
  5.  
  6.     static void Main()
  7.     {
  8.         int totalNumValue = int.Parse(Console.ReadLine());
  9.         string[] letters = new string[] { "A", "B", "C", "E", "H", "K", "M", "P", "T", "X" };
  10.         int counter = 0;
  11.         int cA = 40;
  12.         for (int digitOne = 0; digitOne <= 9; digitOne++)
  13.         {
  14.             for (int digitTwo = 0; digitTwo <= 9; digitTwo++)
  15.             {
  16.                 for (int firstLetter = 0; firstLetter < letters.Length; firstLetter++)
  17.                 {
  18.                     for (int secondLetter = 0; secondLetter < letters.Length; secondLetter++)
  19.                     {
  20.                         if (((cA + digitOne * 4 + ConvertLetter(letters[firstLetter])
  21.                                  + ConvertLetter(letters[secondLetter])) == totalNumValue) && (digitOne == digitTwo))
  22.                         {
  23.                             counter++;
  24.                         }
  25.                         if (((cA + digitOne * 3 + digitTwo + ConvertLetter(letters[firstLetter])
  26.                                  + ConvertLetter(letters[secondLetter])) == totalNumValue) && (digitOne != digitTwo))
  27.                         {
  28.                             counter++;
  29.                         }
  30.                         if (((cA + digitOne * 2 + digitTwo * 2 + ConvertLetter(letters[firstLetter])
  31.                                  + ConvertLetter(letters[secondLetter])) == totalNumValue) && (digitOne != digitTwo))
  32.                         {
  33.                             counter += 3;
  34.                         }
  35.                         if (((cA + digitOne + digitTwo * 3 + ConvertLetter(letters[firstLetter])
  36.                                  + ConvertLetter(letters[secondLetter])) == totalNumValue) && (digitOne != digitTwo))
  37.                         {
  38.                             counter++;
  39.                         }
  40.                     }
  41.                 }
  42.             }
  43.         }
  44.         Console.WriteLine(counter);
  45.     }
  46.  
  47.     private static int ConvertLetter(string letterToInt)
  48.     {
  49.         int numberToReturn = 0;
  50.         switch (letterToInt)
  51.         {
  52.             case "A": numberToReturn = 10; break;
  53.             case "B": numberToReturn = 20; break;
  54.             case "C": numberToReturn = 30; break;
  55.             case "E": numberToReturn = 50; break;
  56.             case "H": numberToReturn = 80; break;
  57.             case "K": numberToReturn = 110; break;
  58.             case "M": numberToReturn = 130; break;
  59.             case "P": numberToReturn = 160; break;
  60.             case "T": numberToReturn = 200; break;
  61.             case "X": numberToReturn = 240; break;
  62.  
  63.         }
  64.         return numberToReturn;
  65.     }
  66.  
  67. }
Advertisement
Add Comment
Please, Sign In to add comment