Исправить код по задаче о катящемся кубике - C#
Формулировка задачи:
Грани кубика помечены числами от 1 до 6.
Если кубик лежит на плоскости, то оставляет след в виде квадрата с цифрой равной цифре на основании кубика.
Кубик катится по столу, переворачиваясь через ребра.
Возьмем некоторую последовательность, состоящую из цифр от 1 до 6.
Определить является ли данная последовательность следом кубика.
Длина последовательности от 1 до 200 символов, в ней присутствуют только цифры от 1 до 6.
Развертка кубика изображена на рисунке. Кубик будет именно таким.
Начальные данные: Последовательность цифр от 1 до 6, записанных в виде строки без пробелов.
Вывод результата: "YES" или "NO" по условию задачи.
Нашими начальными данными по условию будут 6413 а вывод YES.
Укажите,в чём я был не прав и почему программа не работает.
using System; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int g = 0; int n = 4; string s = "1 2 3 4 5 6"; string s2 = Console.ReadLine(); string[] mass = s2.Split(); for (int i = 0; i < n; i++) { string a = mass[i]; if (s.Contains(a)) { g++; } } if (g == 4) { Console.WriteLine("YES"); } } } }
чуток изменил цикл,но ничего не изменилось
for (int i = 0; i < n; i++) { string a = mass[i]; bool b = s.Contains(a); if (b==true) { g++; } }
Решение задачи: «Исправить код по задаче о катящемся кубике»
textual
Листинг программы
class Program { static void Main() { string input = Console.ReadLine(); Console.WriteLine(CanRoll(input) ? "YES" : "NO"); } static bool CanRoll(string input) { if (input.Length == 1) return true; bool[,] adjacency = new bool[6, 6] { { true, true, true, true, true, false }, { true, true, true, true, false, true }, { true, true, true, false, true, true }, { true, true, false, true, true, true }, { true, false, true, true, true, true }, { false, true, true, true, true, true }, }; for (int i = 1; i < input.Length; i++) { int a = (int)char.GetNumericValue(input[i - 1]) - 1; int b = (int)char.GetNumericValue(input[i]) - 1; if (!adjacency[a, b]) return false; } return true; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д