Advertisement
Guest User

Untitled

a guest
Dec 6th, 2016
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.86 KB | None | 0 0
  1. using System;
  2. using System.IO;
  3. using System.Collections.Generic;
  4. namespace maxmin
  5. {
  6. class MainClass
  7. {
  8. public static int func(string s)
  9. {
  10. if (s[0] == 'M' || s[0] == 'm')// если строка начинается с букв М или м то надо разбить строку на 2 подстроки
  11. {
  12. string res1 = "", res2 = ""; //
  13. int skobka = 0; // эта переменная нужна чтобы следить есть ли у нас скобка без пары или нет
  14. // если она равна 0 значит скобка с парой иначе она без пары
  15. int i = 2;
  16. for (; i < s.Length; i++)
  17. {
  18. if (s[i] == '(')
  19. skobka++;
  20. else
  21. if (s[i] == ')')
  22. skobka--;
  23. else
  24. if (s[i] == ',' && skobka == 0) // если у нас появилась запятая и у всех скобок есть пары
  25. // значит мы нашли первую подстроку, выходим из цикла
  26. {
  27. i++;
  28. break;
  29. }
  30. res1 += s[i];
  31. }
  32. res2 += s.Substring(i, s.Length - i - 1);// определяем вторую подстроку
  33. if (s[0] == 'M') // если вначале была М большая значит берем максимум из результата вычисления функции
  34. // первой подстроки и второй
  35. return Math.Max(func(res1), func(res2));
  36. else// иначе берем минимум
  37. return Math.Min(func(res1), func(res2));
  38. }
  39. return int.Parse(s);
  40. }
  41. public static void Main(string[] args)
  42. {
  43. Console.WriteLine("Введите строку");
  44. string str = Console.ReadLine();
  45. Console.WriteLine(func(str)); // выводим результат который вычисляется в функции
  46. }
  47. }
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement