{"id":17785,"date":"2023-04-16T15:10:34","date_gmt":"2023-04-16T11:40:34","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/sparse-arrays-hackerrank-solution-in-java-2lic\/"},"modified":"2023-04-16T15:10:34","modified_gmt":"2023-04-16T11:40:34","slug":"sparse-arrays-hackerrank-solution-in-java-2lic","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/sparse-arrays-hackerrank-solution-in-java-2lic\/","title":{"rendered":"\u0631\u0627\u0647 \u062d\u0644 \u0631\u062a\u0628\u0647 \u0628\u0646\u062f\u06cc \u0647\u06a9\u0631 \u0622\u0631\u0627\u06cc\u0647 \u0647\u0627\u06cc \u067e\u0631\u0627\u06a9\u0646\u062f\u0647 \u062f\u0631 \u062c\u0627\u0648\u0627"},"content":{"rendered":"<div data-article-id=\"1437421\" id=\"article-body\">\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>import java.io.*;\nimport java.math.*;\nimport java.security.*;\nimport java.text.*;\nimport java.util.*;\nimport java.util.concurrent.*;\nimport java.util.function.*;\nimport java.util.regex.*;\nimport java.util.stream.*;\nimport static java.util.stream.Collectors.joining;\nimport static java.util.stream.Collectors.toList;\n\nclass Result {\n\n    \/*\n     * Complete the 'matchingStrings' function below.\n     *\n     * The function is expected to return an INTEGER_ARRAY.\n     * The function accepts following parameters:\n     *  1. STRING_ARRAY stringList\n     *  2. STRING_ARRAY queries\n     *\/\n\n    public static List&lt;Integer&gt; matchingStrings(List&lt;String&gt; stringList, List&lt;String&gt; queries) {\n        HashMap&lt;String,Integer&gt; hm = new HashMap&lt;&gt;();\n        for(int i=0;i&lt;stringList.size();i++){\n            String s = stringList.get(i); \n            hm.put(s,hm.getOrDefault(s,0)+1);\n        }\n        List&lt;Integer&gt; res = new ArrayList&lt;&gt;();\n        for(int i=0;i&lt;queries.size();i++){\n            String s = queries.get(i);\n            if(hm.containsKey(s)){\n                res.add(hm.get(s));\n            }else{\n                res.add(0);\n            } \n        }\n        return res;\n    }\n\n}\n\npublic class Solution {\n    public static void main(String[] args) throws IOException {\n        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));\n        BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(System.getenv(\"OUTPUT_PATH\")));\n\n        int stringListCount = Integer.parseInt(bufferedReader.readLine().trim());\n\n        List&lt;String&gt; stringList = IntStream.range(0, stringListCount).mapToObj(i -&gt; {\n            try {\n                return bufferedReader.readLine();\n            } catch (IOException ex) {\n                throw new RuntimeException(ex);\n            }\n        })\n            .collect(toList());\n\n        int queriesCount = Integer.parseInt(bufferedReader.readLine().trim());\n\n        List&lt;String&gt; queries = IntStream.range(0, queriesCount).mapToObj(i -&gt; {\n            try {\n                return bufferedReader.readLine();\n            } catch (IOException ex) {\n                throw new RuntimeException(ex);\n            }\n        })\n            .collect(toList());\n\n        List&lt;Integer&gt; res = Result.matchingStrings(stringList, queries);\n\n        bufferedWriter.write(\n            res.stream()\n                .map(Object::toString)\n                .collect(joining(\"\\n\"))\n            + \"\\n\"\n        );\n\n        bufferedReader.close();\n        bufferedWriter.close();\n    }\n}\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>import java.io.*; import java.math.*; import java.security.*; import java.text.*; import java.util.*; import java.util.concurrent.*; import java.util.function.*; import java.util.regex.*; import java.util.stream.*; import static java.util.stream.Collectors.joining; import static java.util.stream.Collectors.toList; class Result { \/* * Complete the &#8216;matchingStrings&#8217; function below. * * The function is expected to return an INTEGER_ARRAY. * The function accepts following parameters: * 1. STRING_ARRAY stringList * &hellip;<\/p>\n","protected":false},"author":2,"featured_media":17786,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-17785","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/17785","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=17785"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/17785\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media\/17786"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=17785"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=17785"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=17785"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}