Advertisement
Guest User

Untitled

a guest
May 25th, 2018
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.86 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. namespace __02
  6. {
  7. class Program
  8. {
  9. public const string Template = "32656";
  10. public const int ArrayLenght = 22;
  11. public const int DistanceToWordLenght = 4;
  12. public const int DistancetoSearchedWord = 6;
  13. static void Main(string[] args)
  14. {
  15.  
  16. var input = Console.ReadLine();
  17. var wordLenght = -1;
  18. var founded = false;
  19. var oldI = 0;
  20. var wordList = new List<byte>();
  21. while (input != "Visual Studio crash")
  22. {
  23. var splitedInput = input.Split().ToArray();
  24.  
  25. for (int i = 0; i < splitedInput.Length; i++)
  26. {
  27.  
  28. if (splitedInput[i].Contains(Template))
  29. {
  30.  
  31.  
  32. var maxLenght = i + DistanceToWordLenght;
  33. if (maxLenght < ArrayLenght)
  34. {
  35.  
  36.  
  37. if (i + DistancetoSearchedWord >= ArrayLenght)
  38. {
  39.  
  40. wordLenght = int.Parse(splitedInput[i + DistanceToWordLenght]);
  41. oldI = i + DistancetoSearchedWord - ArrayLenght;
  42. founded = true;
  43. break;
  44. }
  45. wordLenght = int.Parse(splitedInput[i + DistanceToWordLenght]);
  46. var beggining = i + DistancetoSearchedWord;
  47. var end = i + DistancetoSearchedWord + wordLenght;
  48. if (end >= ArrayLenght)
  49. {
  50. end = ArrayLenght;
  51. for (int a = beggining; a < end; a++)
  52. {
  53. wordList.Add(byte.Parse(splitedInput[a]));
  54. wordLenght--;
  55. }
  56.  
  57. oldI = 0;
  58. founded = true;
  59. break;
  60. }
  61. for (int a = beggining; a <= end; a++)
  62. {
  63. wordList.Add(byte.Parse(splitedInput[a]));
  64. }
  65. var arrayList = wordList.ToArray();
  66. char[] letter1 = Encoding.ASCII.GetChars(arrayList);
  67. Console.WriteLine(string.Join("", letter1));
  68. wordList.Clear();
  69. break;
  70. }
  71.  
  72. else
  73. {
  74. oldI = i + DistancetoSearchedWord - ArrayLenght;
  75.  
  76. founded = true;
  77. break;
  78. }
  79. }
  80. else if (founded)
  81. {
  82. var beggining = oldI ;
  83. if (wordLenght != -1)
  84. {
  85. var end = beggining + wordLenght;
  86. for (int a = beggining; a < end; a++)
  87. {
  88. wordList.Add(byte.Parse(splitedInput[a]));
  89. }
  90. var arrayList = wordList.ToArray();
  91. char[] letter1 = Encoding.ASCII.GetChars(arrayList);
  92. Console.WriteLine(string.Join("", letter1));
  93. wordList.Clear();
  94. founded = false;
  95. wordLenght = -1;
  96. }
  97. else
  98. {
  99. wordLenght = int.Parse(splitedInput[oldI - 2]);
  100. var end = beggining + wordLenght;
  101. for (int a = beggining; a < end; a++)
  102. {
  103. wordList.Add(byte.Parse(splitedInput[a]));
  104. }
  105. var arrayList = wordList.ToArray();
  106. char[] letter1 = Encoding.ASCII.GetChars(arrayList);
  107. Console.WriteLine(string.Join("", letter1));
  108. wordList.Clear();
  109. founded = false;
  110. wordLenght = -1;
  111.  
  112. }
  113. }
  114. }
  115. input = Console.ReadLine();
  116. }
  117. }
  118. }
  119. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement