Advertisement
victor-velchev

Multiverse Communication

Jan 10th, 2014
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.24 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Numerics;
  5.  
  6. namespace MultiverseCommunicationFIXED
  7. {
  8.     class Program
  9.     {
  10.         static BigInteger Repeater(int times)
  11.         {
  12.             BigInteger result = 1;
  13.  
  14.             for (int s = 0; s < times; s++)
  15.             {
  16.                 result *= 13;
  17.             }
  18.  
  19.             return result;
  20.         }
  21.  
  22.         static void Main()
  23.         {
  24.             string input = Console.ReadLine();
  25.             string[] workput = new string[input.Length / 3];
  26.             int count = 0;
  27.             BigInteger sum = 0;
  28.             string workNumber = string.Empty;
  29.             BigInteger modifier = 1;
  30.  
  31.             for (int i = 0;  i < input.Length; i++)
  32.             {
  33.                 if (i % 3 == 0 && i != 0)
  34.                 {
  35.                     count++;
  36.                 }
  37.                 workput[count] += input[i];
  38.             }
  39.  
  40.             for (int i = 0; i < workput.GetLength(0); i++)
  41.             {
  42.                 switch (workput[i])
  43.                 {
  44.                     case "CHU":
  45.                         workNumber += 0.ToString();
  46.                         break;
  47.                     case "TEL":
  48.                         workNumber += 1.ToString();
  49.                         break;
  50.                     case "OFT":
  51.                         workNumber += 2.ToString();
  52.                         break;
  53.                     case "IVA":
  54.                         workNumber += 3.ToString();
  55.                         break;
  56.                     case "EMY":
  57.                         workNumber += 4.ToString();
  58.                         break;
  59.                     case "VNB":
  60.                         workNumber += 5.ToString();
  61.                         break;
  62.                     case "POQ":
  63.                         workNumber += 6.ToString();
  64.                         break;
  65.                     case "ERI":
  66.                         workNumber += 7.ToString();
  67.                         break;
  68.                     case "CAD":
  69.                         workNumber += 8.ToString();
  70.                         break;
  71.                     case "K-A":
  72.                         workNumber += 9.ToString();
  73.                         break;
  74.                     case "IIA":
  75.                         workNumber += "A";
  76.                         break;
  77.                     case "YLO":
  78.                         workNumber += "B";
  79.                         break;
  80.                     case "PLA":
  81.                         workNumber += "C";
  82.                         break;
  83.                 }
  84.                 modifier *= 13;
  85.             }
  86.  
  87.             for (int j = workNumber.Length - 1, x = 0; j >= 0; j--, x++)
  88.             {
  89.                 BigInteger stepen = Repeater(x);
  90.  
  91.                 switch (workNumber[j])
  92.                 {
  93.                     case '0':
  94.                         sum += 0 * stepen;
  95.                         break;
  96.                     case '1':
  97.                         sum += 1 * stepen;
  98.                         break;
  99.                     case '2':
  100.                         sum += 2 * stepen;
  101.                         break;
  102.                     case '3':
  103.                         sum += 3 * stepen;
  104.                         break;
  105.                     case '4':
  106.                         sum += 4 * stepen;
  107.                         break;
  108.                     case '5':
  109.                         sum += 5 * stepen;
  110.                         break;
  111.                     case '6':
  112.                         sum += 6 * stepen;
  113.                         break;
  114.                     case '7':
  115.                         sum += 7 * stepen;
  116.                         break;
  117.                     case '8':
  118.                         sum += 8 * stepen;
  119.                         break;
  120.                     case '9':
  121.                         sum += 9 * stepen;
  122.                         break;
  123.                     case 'A':
  124.                         sum += 10 * stepen;
  125.                         break;
  126.                     case 'B':
  127.                         sum += 11 * stepen;
  128.                         break;
  129.                     case 'C':
  130.                         sum += 12 * stepen;
  131.                         break;
  132.                 }
  133.             }
  134.  
  135.             Console.WriteLine(sum);
  136.         }
  137.     }
  138. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement