using System; using System.Collections.Generic; using System.Text; public class Program { public void Proc(){ Reader.IsDebug = false; string strA = Reader.ReadLine(); string strB = Reader.ReadLine(); Dictionary dicA = new Dictionary(); Dictionary dicB = new Dictionary(); foreach (char c in strA) { if(dicA.ContainsKey(c)) { dicA[c]++; } else { dicA.Add(c, 1); } } foreach (Char c in strB) { if(dicB.ContainsKey(c)) { dicB[c]++; } else { dicB.Add(c, 1); } } bool isMatch = true; foreach (Char key in dicA.Keys) { if(dicB.ContainsKey(key) && dicB[key] == dicA[key]) { } else { isMatch = false; break; } } Console.WriteLine(isMatch?"YES":"NO"); } public static void Main(string[] args) { Program prg = new Program(); prg.Proc(); } } class Reader { public static bool IsDebug = true; private static System.IO.StringReader sr; public static string ReadLine() { if(IsDebug) { if(sr == null) { sr = new System.IO.StringReader(initStr.Trim()); } return sr.ReadLine(); } else { return Console.ReadLine(); } } public static int[] GetInt(char delimiter = ' ') { string[] inpt = ReadLine().Split(delimiter); int[] ret = new int[inpt.Length]; for(int i=0; i