Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- class BullsAndCows
- {
- static void Main()
- {
- int secretNumber = int.Parse(Console.ReadLine());
- int bulls = Convert.ToInt32(Console.ReadLine());
- int cows = Convert.ToInt32(Console.ReadLine());
- int result = 0;
- for (int guessNumber = 1111; guessNumber <= 9999; guessNumber++)
- {
- if (guessNumber.ToString().IndexOf('0') > -1)
- {
- continue;
- }
- int bullsFound = FindBulls(guessNumber,secretNumber);
- int cowsFound = FindCows(guessNumber, secretNumber);
- if (bulls == bullsFound && cowsFound == cows)
- {
- result++;
- Console.Write(guessNumber + " ");
- }
- }
- if (result == 0)
- {
- Console.WriteLine("No");
- }
- }
- static int FindCows(int guessNumber, int secretNumber)
- {
- char[] currentGuessNumber = guessNumber.ToString().ToCharArray();
- char[] currentSecNumber = secretNumber.ToString().ToCharArray();
- int cowsCount = 0;
- for (int i = 0; i < 4; i++)
- {
- if (currentGuessNumber[i] == currentSecNumber[i])//тук трябва, защото в долния метод не сме го направили
- {
- currentGuessNumber[i] = '*';
- currentSecNumber[i] = '*';
- }
- }
- for (int i = 0; i < 4; i++)
- {
- for (int j = 0; j < 4; j++)
- {
- if (currentGuessNumber[i] != '*' && currentGuessNumber[i] == currentSecNumber[j])
- {
- currentGuessNumber[i] = '*';
- currentSecNumber[j] = '*';
- cowsCount++;
- }
- }
- }
- return cowsCount;
- }
- static int FindBulls(int guessNumber, int secretNumber)
- {
- char[] currentGuessNumber = guessNumber.ToString().ToCharArray();
- char[] currentSecNumber = secretNumber.ToString().ToCharArray();
- int bullsCount = 0;
- for (int i = 0; i < 4; i++)
- {
- if (currentGuessNumber[i] == currentSecNumber[i])
- {
- bullsCount++;
- }
- }
- return bullsCount;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment