Game of Thrones - I
-
mayurnagdev123 5 years ago static int freq[]; // Complete the gameOfThrones function below. static String gameOfThrones(String s) { freq=new int[27]; char ch[]=s.toCharArray(); for(char tmp:ch){ int eq=(int)tmp-96; ++freq[eq]; } boolean oddFound=false; for(int i=0;i<27;i++) { if(freq[i]%2==1) { if(!oddFound) oddFound=true; else return "NO"; } else{//even freqs } } return "YES"; }//func
My code in Java7
-
devinludwig 6 years ago ruby:
def gameOfThrones(s) s.split('').group_by{|x|x}.values.map{|v| v.size}.count{|x|x.odd?} < 2 ? "YES" : 'NO' end
-
achal_g91 11 years ago http://ideone.com/3KPo6L this is an even more optimum solution than the editorial and the test cases pass on ideone. I dont know why they are not passing here?
-
abhiranjan 11 years ago Hi @achal_g91, check range of short. It can go beyound ~65*10^3. Use at least int.
-
-
mahacoder 11 years ago The string has even number of characters in test case 20 and the frequency of char 'o' turns out to be odd. So we shouldn't be able to make a palindrome out of it right? Please tell me if any of my statements is wrong.
-
abhiranjan 11 years ago Hi @mahacoder, below is the frequency is each character in the string.
('a',3818) ('b',3948) ('c',3778) ('d',3866) ('e',3738) ('f',3766) ('g',3814) ('h',3832) ('i',3792) ('j',3786) ('k',3904) ('l',3760) ('m',3770) ('n',3818) ('o',3858) ('p',3786) ('q',3876) ('r',3948) ('s',3794) ('t',3858) ('u',3970) ('v',3940) ('w',3810) ('x',3852) ('y',3870) ('z',3962)
-
abhiranjan 11 years ago btw, your initial statement is also contradicting. How a string of even length contains only one character with odd number of occurrence.
-
-
gaoyunzhi 12 years ago Where can I find the solutions to these problems? Thank you very much!
-
PRASHANTB1984 12 years ago Hi, Check out our blog for editorials with the solutions to these problems. Thanks, --Prashnt
-
JAVA_DEVELOPER 11 years ago How to solve this Game Of Thrones - I Problem in java
-
Sort 17 Discussions, By:
Please Log In in order to post a comment