Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- namespace _05_Magic_exchangeable_words
- {
- class Program
- {
- static void Main(string[] args)
- {
- //again:
- var inputLine = Console.ReadLine().Split();
- var result = IsMagic(inputLine);
- Console.WriteLine(result.ToString().ToLower());
- //goto again;
- }
- public static bool IsMagic(string[] inputLine)
- {
- var firstWord = inputLine[0];
- var secondWord = inputLine[1];
- var shorterString = firstWord.Length <= secondWord.Length ? firstWord.ToCharArray() : secondWord.ToCharArray();
- var longerString = firstWord.Length > secondWord.Length ? firstWord.ToCharArray() : secondWord.ToCharArray();
- Dictionary<string, string> mappedChars = new Dictionary<string, string>();
- for (int i = 0; i < shorterString.Length; i++)
- {
- var charFromShorterWord = shorterString[i].ToString();
- var charfromLongerWord = longerString[i].ToString();
- if (!mappedChars.ContainsKey(charFromShorterWord))
- {
- mappedChars.Add(charFromShorterWord, charfromLongerWord);
- }
- if (!mappedChars[charFromShorterWord].Equals(charfromLongerWord))
- {
- return false;
- }
- }
- for (int j = shorterString.Length; j < longerString.Length; j++)
- {
- var charFromLongerWord = longerString[j].ToString();
- if (!mappedChars.ContainsValue(charFromLongerWord))
- {
- return false;
- }
- }
- return true;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement