From 0a073ab4cd3a32808c8a35da1fe06a9846db8243 Mon Sep 17 00:00:00 2001 From: "surajdesai1297@gmail.com" Date: Tue, 8 Sep 2020 20:54:57 +0530 Subject: [PATCH] FSJ0820B107 --- .classpath | 6 +- build/classes/.gitignore | 2 +- build/classes/controller/FlamesCheck.class | Bin 1349 -> 2394 bytes .../testing/TestFlamesCheckService.class | Bin 0 -> 1257 bytes src/controller/FlamesCheck.java | 59 +++++----- src/service/FlamesCheckService.java | 108 ++++++++++++++++++ src/testing/TestFlamesCheckService.java | 52 ++++----- 7 files changed, 165 insertions(+), 62 deletions(-) create mode 100644 build/classes/testing/TestFlamesCheckService.class diff --git a/.classpath b/.classpath index 2846539..20c137d 100644 --- a/.classpath +++ b/.classpath @@ -8,10 +8,6 @@ - - - - - + diff --git a/build/classes/.gitignore b/build/classes/.gitignore index 4e7e508..c6ca2cf 100644 --- a/build/classes/.gitignore +++ b/build/classes/.gitignore @@ -1 +1 @@ -/controller/ +/service/ diff --git a/build/classes/controller/FlamesCheck.class b/build/classes/controller/FlamesCheck.class index fe7152f9157fd498f6faf543a7b8c5a0e811fa05..c3bf8f90193e9cb6a83c9b1922f5c22cbdba8efd 100644 GIT binary patch delta 1115 zcmZWoO-~b16g{t74)9WLbu@C(#Sp-pHf^WHu4&Yg45yEE^bW7p;Q@ppR%Ko{mV z9lE*3hAsx-RdPi?fgbdVxXMt!wqIZC#5MRCoH3pnmvuS8Q(R|g$Vw)6MvBW?Op2s* zRf`2|=wq-b`iik2;yOc}!S%GNa48(8w~WvNSC%4&OAZ84c`)5{VgMlqM^x435Azr< zH;ydIY5ACV`ASpBmcbyEktPQRT8GENQd;FN4JoRtT$?xA7L8>aZZo(`_;@nS^&@(i z!BaxZ(I{6^YEnBCxXW;^BqJf~x+=$b+hXRR#Avw%uJMG*k80d2S1{DMICU(aKrPd# zJ?#vx@;x4r9Sr8EVvyO9V?Fg9YifXjEzzKMRzy;=vNS3$Psnp|E@GNK*xJ6=V=N~% zgPvy?s!Cg&eQo|?IRgP_vq53X?tv5MaT*u0?}ed^$pSNM^t z@EO7BPq^W?xGk-2VGI2|)*5S7bOWB|E!4Sg<={2JFS^ARUk(jse8dLv@d6(%=id-7 z7xec@_&Ef^|}B6 delta 143 zcmca5bd-zh)W2Q(7#J8#7%Vq(6){gf&ANwGoPmWwa&iw_1g9(m4}%LU21X$1$RGeD6(Euff($}H9#9#B4udXOo{>S1K_94tiNP2s X&IGj06iD*{<;;NCJeq;An85-73)2y+ diff --git a/build/classes/testing/TestFlamesCheckService.class b/build/classes/testing/TestFlamesCheckService.class new file mode 100644 index 0000000000000000000000000000000000000000..45bcb27bb9635599837c2e7d84a5848a38889338 GIT binary patch literal 1257 zcmaJ=+fEZv6kVq+%uolY1IqpCg>sQ1q9`ERR?yTbMoTdIV3-aE7?{prJ2miTG$ckp z#Agz3(Zmn%qtrDm0kvwR0`L?@}Smt-pF$=Pk z-jvpMP8OfpmQ)ZCh;5nA%!FeSbuYgqEngtKZj}VOjZzhss69C=P(Nq8wm(mFe0W75 zlJ?eQ6k(jupg>j7DA4)u0#Rr<(EzsBP=|VfX2W*nQn`?q#bq<^NCDmOEYn#ri*~R+ zOh)`oo80=1|0^TE)&Q|+yK7bUS?Ozewk2Ycs>?Cr%xq($-AW!n$R5`CALVPpN>C9=>GiX68S5(7%2&Wm>bJfN#Ym3M1SjYH{ z-frlf*_b)svp@0<&7)%<(7pc&{rY)Bk7r|rn*4~Nk7Z-BCO>ZI6WN&aXFez@1dBcl zB7O2G6#7(aKHyuVG?@5KO##JN9H&sNoBZe;S_EPKsMNUxW zC5pU4iPwm~gLd3S2bR!@`$Vpy2U|p!(Z|~TtUiE!4B|CsIIwG~YQv#jVZ6dD=E$U; usOyYE?D_)pxIq^C#NI@bcBgo<4WS<_7f~P-r1|6YD3}ghUf^~Ji$4K$=@FX% literal 0 HcmV?d00001 diff --git a/src/controller/FlamesCheck.java b/src/controller/FlamesCheck.java index b9b9a0b..fb5b908 100644 --- a/src/controller/FlamesCheck.java +++ b/src/controller/FlamesCheck.java @@ -12,8 +12,7 @@ import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - - +import service.FlamesCheckService; @WebServlet("/flames") public class FlamesCheck extends HttpServlet { @@ -34,34 +33,34 @@ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { /* - * Uncomment the below code to test your output - * String name1 = request.getParameter("your"); - * String name2 = request.getParameter("crush"); - * - * FlamesCheckService fcs = new FlamesCheckService(); - * - * char k = fcs.findFlames(name1,name2); - * - * if (k == 'f') { RequestDispatcher rd=this.getServletContext().getRequestDispatcher("/WEB-INF/views/friends.jsp" - * ); rd.forward(request, response); - * - * } else if (k == 'l') { RequestDispatcher rd=this.getServletContext().getRequestDispatcher("/WEB-INF/views/lovers.jsp") - * ; rd.forward(request, response); - * - * } else if (k == 'a') { RequestDispatcher rd=this.getServletContext().getRequestDispatcher( - * "/WEB-INF/views/affection.jsp"); rd.forward(request, response); - * - * } else if (k == 'm') { RequestDispatcher rd=this.getServletContext().getRequestDispatcher( - * "/WEB-INF/views/marriage.jsp"); rd.forward(request, response); - * - * } else if (k == 'e') { RequestDispatcher rd=this.getServletContext().getRequestDispatcher("/WEB-INF/views/enemies.jsp" - * ); rd.forward(request, response); - * - * } else if (k == 's') { RequestDispatcher rd=this.getServletContext().getRequestDispatcher( - * "/WEB-INF/views/siblings.jsp"); rd.forward(request, response); - * - * } - */ + * Uncomment the below code to test your output */ + String name1 = request.getParameter("your"); + String name2 = request.getParameter("crush"); + + FlamesCheckService fcs = new FlamesCheckService(); + + char k = fcs.findFlames(name1,name2); + + if (k == 'f') { RequestDispatcher rd=this.getServletContext().getRequestDispatcher("/WEB-INF/views/friends.jsp" + ); rd.forward(request, response); + + } else if (k == 'l') { RequestDispatcher rd=this.getServletContext().getRequestDispatcher("/WEB-INF/views/lovers.jsp") + ; rd.forward(request, response); + + } else if (k == 'a') { RequestDispatcher rd=this.getServletContext().getRequestDispatcher( + "/WEB-INF/views/affection.jsp"); rd.forward(request, response); + + } else if (k == 'm') { RequestDispatcher rd=this.getServletContext().getRequestDispatcher( + "/WEB-INF/views/marriage.jsp"); rd.forward(request, response); + + } else if (k == 'e') { RequestDispatcher rd=this.getServletContext().getRequestDispatcher("/WEB-INF/views/enemies.jsp" + ); rd.forward(request, response); + + } else if (k == 's') { RequestDispatcher rd=this.getServletContext().getRequestDispatcher( + "/WEB-INF/views/siblings.jsp"); rd.forward(request, response); + + } + } } diff --git a/src/service/FlamesCheckService.java b/src/service/FlamesCheckService.java index a8c006a..cd65c32 100644 --- a/src/service/FlamesCheckService.java +++ b/src/service/FlamesCheckService.java @@ -7,3 +7,111 @@ // You must return only the following values ['f','l','a','m','e','s'] // change the return value at the end of the method corresponding to your return value +import java.util.*; + +public class FlamesCheckService{ + + public char findFlames(String name1, String name2){ + + name1 = name1.toLowerCase(); + name2 = name2.toLowerCase(); + + + // storing all the unique characters of name1 in set + Set wordsName1 = new HashSet(); + + for(int i =0; i wordsName2 = new HashSet(); + + for(int i =0; i value = wordsName1.iterator(); + while (value.hasNext()) { + char word = value.next(); + if(!wordsName2.contains(word)){ + name1MinusName2 += Character.toString(word); + } + } + + // iterating over wordsName1 to get characters which are not in name2 + Iterator value2 = wordsName2.iterator(); + while (value2.hasNext()) { + char word = value2.next(); + if(!wordsName1.contains(word)){ + name2MinusName1 += Character.toString(word); + } + } + + int count = name1MinusName2.length() + name2MinusName1.length(); + + + + String flames = "flames"; + + // iterate over flames till we get last character from flames + while(flames.length() > 1) { + String letter = ""; + + // variable to keep track where the pointer lies while iterating over flames so that the character at index count + // can be removed + int flamesCount = 0; + + // iterating over flames and finding the character which lies at index count. + while(flamesCount < count) { + for(int i = 0; i