{"id":1598,"date":"2020-07-01T09:31:01","date_gmt":"2020-07-01T09:31:01","guid":{"rendered":"https:\/\/blog.prepbytes.com\/?p=1598"},"modified":"2022-03-25T11:40:40","modified_gmt":"2022-03-25T11:40:40","slug":"small-count","status":"publish","type":"post","link":"https:\/\/prepbytes.com\/blog\/small-count\/","title":{"rendered":"Small Count"},"content":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645768112867-Article_485.png\" alt=\"\" \/><\/p>\n<h3>CONCEPTS USED:<\/h3>\n<blockquote>\n<p>Binary Search<\/p>\n<\/blockquote>\n<h3>DIFFICULTY LEVEL:<\/h3>\n<blockquote>\n<p>Hard<\/p>\n<\/blockquote>\n<h3>PROBLEM STATEMENT<code>(<\/code>SIMPLIFIED<code>)<\/code>:<\/h3>\n<blockquote>\n<p>Given an array <code>A<\/code> containing <code>N<\/code> elements, construct a new array <code>countSmaller[]<\/code> such that <code>countSmaller[i]<\/code> contains count of smaller elements on right side of each element <code>A[i]<\/code> in the array where <code>(0 &lt;= i &lt; N)<\/code>.<\/p>\n<\/blockquote>\n<p><a href=\"https:\/\/mycode.prepbytes.com\/problems\/searching\/SMCNTAF\" title=\"Go to mycode.prepbytes.com\" target=\"_blank\" rel=\"noopener noreferrer\"><u><strong><\/strong><\/u><\/a><\/p>\n<h4>For Example:<\/h4>\n<pre><code>Input  : A = [6, 4, 2, 1, 5]\n\nOutput : R = [4, 2, 1, 0, 0]\n\nExplanation :   \n\n6 has 4 elements smaller than it on its right i.e. (4, 2, 1, 5)\n\n4 has 2 elements smaller than it on its right i.e. (2, 1)\n\n2 has 1 element smaller than it on its right i.e. (1)\n\n1 has 0 element smaller than it on its right.\n\n5 has 0 element smaller than it on its right.<\/code><\/pre>\n<h3>OBSERVATION:<\/h3>\n<blockquote>\n<ol>\n<li>\n<p>If the value of <code>N<\/code> is greater than <code>10^5<\/code>, a <code>O(N^2)<\/code> solution will lead to a <code>TLE<\/code> and a <code>O(N)<\/code> solution is not possible for this problem, so  we should look for a in-between solution.  <\/p>\n<\/li>\n<li>\n<p>Solving the problem in <code>O(NlogN)<\/code>  would be great, where <code>O(N)<\/code> would be required for the array traversal only, we are left with <code>O(logN)<\/code>.<\/p>\n<\/li>\n<li>\n<p>So this gives us an intuition that may be <code>Binary Search<\/code> can do our work here.<\/p>\n<\/li>\n<\/ol>\n<\/blockquote>\n<h3>SOLVING APPROACH:<\/h3>\n<blockquote>\n<ol>\n<li>\n<p>The idea is to use <code>Binary Search<\/code>.  <\/p>\n<\/li>\n<li>\n<p>Create an empty vector to store elements in a sorted manner.<\/p>\n<\/li>\n<li>\n<p>Start traversing the array from <code>right<\/code> to <code>left<\/code> and find the position of the current element in the vector where it should be placed to maintain the sorted property of the vector.   <\/p>\n<\/li>\n<li>\n<p><code>Binary Search<\/code> will be used to find such position. Then insert the element at that position and the position itself will tell the elements smaller than the current element in the vector as it is already sorted. Store this value in a <code>result<\/code> array for every such element.<\/p>\n<\/li>\n<li>\n<p>Print the <code>result<\/code> array.<\/p>\n<\/li>\n<\/ol>\n<\/blockquote>\n<h3>SOLUTIONS:<\/h3>\n<p>\t\t\t\t\t\t<style>\r\n\t\t\t\t\r\n\t\t\t\t\t#tab_container_1607 {\r\n\toverflow:hidden;\r\n\tdisplay:block;\r\n\twidth:100%;\r\n\tborder:0px solid #ddd;\r\n\tmargin-bottom:30px;\r\n\t}\r\n\r\n#tab_container_1607 .tab-content{\r\n\tpadding:20px;\r\n\tborder: 1px solid #e6e6e6 !important;\r\n\tmargin-top: 0px;\r\n\tbackground-color:#ffffff !important;\r\n\tcolor: #000000 !important;\r\n\tfont-size:16px !important;\r\n\tfont-family: Open Sans !important;\r\n\t\r\n\t\tborder: 1px solid #e6e6e6 !important;\r\n\t}\r\n#tab_container_1607 .wpsm_nav-tabs {\r\n    border-bottom: 0px solid #ddd;\r\n}\r\n#tab_container_1607 .wpsm_nav-tabs > li.active > a, #tab_container_1607 .wpsm_nav-tabs > li.active > a:hover, #tab_container_1607 .wpsm_nav-tabs > li.active > a:focus {\r\n\tcolor: #000000 !important;\r\n\tcursor: default;\r\n\tbackground-color: #ffffff !important;\r\n\tborder: 1px solid #e6e6e6 !important;\r\n}\r\n\r\n#tab_container_1607 .wpsm_nav-tabs > li > a {\r\n    margin-right: 0px !important; \r\n    line-height: 1.42857143 !important;\r\n    border: 1px solid #d5d5d5 !important;\r\n    border-radius: 0px 0px 0 0 !important; \r\n\tbackground-color: #e8e8e8 !important;\r\n\tcolor: #000000 !important;\r\n\tpadding: 15px 18px 15px 18px !important;\r\n\ttext-decoration: none !important;\r\n\tfont-size: 14px !important;\r\n\ttext-align:center !important;\r\n\tfont-family: Open Sans !important;\r\n}\r\n#tab_container_1607 .wpsm_nav-tabs > li > a:focus {\r\noutline: 0px !important;\r\n}\r\n\r\n#tab_container_1607 .wpsm_nav-tabs > li > a:before {\r\n\tdisplay:none !important;\r\n}\r\n#tab_container_1607 .wpsm_nav-tabs > li > a:after {\r\n\tdisplay:none !important ;\r\n}\r\n#tab_container_1607 .wpsm_nav-tabs > li{\r\npadding:0px !important ;\r\nmargin:0px;\r\n}\r\n\r\n#tab_container_1607 .wpsm_nav-tabs > li > a:hover , #tab_container_1607 .wpsm_nav-tabs > li > a:focus {\r\n    color: #000000 !important;\r\n    background-color: #e8e8e8 !important;\r\n\tborder: 1px solid #d5d5d5 !important;\r\n\t\r\n}\r\n#tab_container_1607 .wpsm_nav-tabs > li > a .fa{\r\n\r\nmargin-right:5px !important;\r\n\r\nmargin-left:5px !important;\r\n\r\n\r\n}\r\n\r\n\t\t#tab_container_1607 .wpsm_nav-tabs a{\r\n\t\t\tbackground-image: none;\r\n\t\t\tbackground-position: 0 0;\r\n\t\t\tbackground-repeat: repeat-x;\r\n\t\t}\r\n\t\t\t\r\n\r\n\r\n#tab_container_1607 .wpsm_nav-tabs > li {\r\n    float: left;\r\n    margin-bottom: -1px !important;\r\n\tmargin-right:0px !important; \r\n}\r\n\r\n\r\n#tab_container_1607 .tab-content{\r\noverflow:hidden !important;\r\n}\r\n\r\n\r\n@media (min-width: 769px) {\r\n\r\n\t#tab_container_1607 .wpsm_nav-tabs > li{\r\n\t\tfloat:left !important ;\r\n\t\t\t\tmargin-right:-1px !important;\r\n\t\t\t\t\t}\r\n\t#tab_container_1607 .wpsm_nav-tabs{\r\n\t\tfloat:none !important;\r\n\t\tmargin:0px !important;\r\n\t}\r\n\r\n\t#tab_container_1607 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_1607 .wpsm_nav{\r\n\t\t\t}\r\n\r\n}\r\n\r\n\r\n\r\n@media (max-width: 768px) {\r\n\t#tab_container_1607 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_1607 .wpsm_nav{\r\n\t\t\t}\r\n}\r\n\r\n\r\n\t.wpsm_nav-tabs li:before{\r\n\t\tdisplay:none !important;\r\n\t}\r\n\r\n\t@media (max-width: 768px) {\r\n\t\t\t\t\r\n\t\t\t\t.wpsm_nav-tabs{\r\n\t\t\tmargin-left:0px !important;\r\n\t\t\tmargin-right:0px !important; \r\n\t\t\t\r\n\t\t}\r\n\t\t\t\t#tab_container_1607 .wpsm_nav-tabs > li{\r\n\t\t\tfloat:none !important;\r\n\t\t}\r\n\t\t\t\r\n\t}\t\t\t\t<\/style>\r\n\t\t\t\t<div id=\"tab_container_1607\" >\r\n\t \r\n\t\t\t\t\t<ul class=\"wpsm_nav wpsm_nav-tabs\" role=\"tablist\" id=\"myTab_1607\">\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  class=\"active\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_1607_1\" aria-controls=\"tabs_desc_1607_1\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>C++<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_1607_2\" aria-controls=\"tabs_desc_1607_2\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>Java<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\t\t\t\t <\/ul>\r\n\r\n\t\t\t\t\t  <!-- Tab panes -->\r\n\t\t\t\t\t  <div class=\"tab-content\" id=\"tab-content_1607\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane  in active \" id=\"tabs_desc_1607_1\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"cpp\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"cpp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\n\r\n#include &lt;bits\/stdc++.h&gt; \r\nusing namespace std; \r\n\r\n\/* function for inserting array elements from right to left\r\n in a sorted manner in a vector and finding count of small\r\n elements in the array to the right of each element*\/\r\nvoid insert(vector&lt;int&gt; &amp;v, int num, int* res, int i) {\r\n\r\n  \/* Initialise with start and end index of vector *\/\r\n  int low = 0;\r\n  int high = v.size() - 1;\r\n  while (low &lt;= high) {\r\n\r\n      \/\/finding a mid index  \r\n      int mid = (low + high) \/ 2;\r\n\r\n      \/\/finding value at mid index\r\n      int M = v[mid];\r\n\r\n      \/* if mid element is greater than or equal to\r\n        num, search in the left half *\/ \r\n      if (M &gt;= num) {\r\n          high = mid - 1;\r\n      } else {\r\n\r\n      \/* else search in the right half also notice low is\r\n        also the count of elements currently less than num *\/\r\n          low = mid + 1;\r\n      }\r\n  }\r\n  \/* therefore low is the index where num should be placed \r\n    as elements to the left are all less than num*\/\r\n  v.insert(v.begin() + low, num);\r\n\r\n  \/* also indicate the elements less than num in the resultant array *\/\r\n  res[i] = low;\r\n}\r\n\r\nvoid countSmaller(int *arr, int n) {\r\n\r\n    \/* resultant array that stores count of lesser elements *\/\r\n    int res[n] = {0};\r\n\r\n    \/* vector for determing the position of an element and \r\n    inserting them accordingly *\/  \r\n    vector&lt;int&gt; v;\r\n    for (int i = n - 1; i &gt;= 0; i--) {\r\n        insert(v, arr[i], res, i);\r\n    }\r\n\r\n    \/* print the resultant array *\/\r\n    for (int i=0; i&lt;n; i++)\r\n      cout&lt;&lt;res[i]&lt;&lt;\" \";\r\n\r\n}\r\n\r\nint main() {\r\n  int t; cin&gt;&gt;t;\r\n  while(t--){\r\n    int n; cin&gt;&gt;n;\r\n    int arr[n];\r\n    for(int i=0; i&lt;n; i++)\r\n      cin&gt;&gt;arr[i];\r\n\r\n    countSmaller(arr, n);\r\n    cout&lt;&lt;\"&#92;n\";\r\n  }\r\n  return 0;\r\n} \r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\r\n\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane \" id=\"tabs_desc_1607_2\">\r\n\t\t\t\t\t\t\t\t\r\n<!-- wp:enlighter\/codeblock {\"language\":\"java\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\n\r\nimport java.io.*;\r\nimport java.util.*;\r\n\r\npublic class Main {\r\n    public static void main(String[] args) throws IOException {\r\n\r\n        Scanner sc = new Scanner(System.in);\r\n        int t=sc.nextInt();\r\n        while(t--&gt;0)\r\n        {\r\n            int n=sc.nextInt();\r\n            int []arr = new int[n];\r\n            for(int i=0;i&lt;n;i++)\r\n                arr[i]=sc.nextInt();\r\n            List&lt;Integer&gt; nlist=countSmallerBinary(arr);\r\n            for (Integer integer : nlist)\r\n                System.out.print(integer + \" \");\r\n            System.out.println();\r\n        }\r\n    }\r\n    private static List&lt;Integer&gt; countSmallerBinary(int[] nums) {\r\n        Integer[] res = new Integer[nums.length];\r\n        List&lt;Integer&gt; list = new ArrayList&lt;&gt;();\r\n        for (int i = nums.length - 1; i &gt;= 0; i--) {\r\n            insert(list, nums[i], res, i);\r\n        }\r\n        return Arrays.asList(res);\r\n    }\r\n\r\n    private static void insert(List&lt;Integer&gt; list, int num, Integer[] res, int i) {\r\n        int lo = 0;\r\n        int hi = list.size() - 1;\r\n\r\n        while (lo &lt;= hi) {\r\n            int mid = (lo + hi) \/ 2;\r\n            int M = list.get(mid);\r\n            if (M &gt;= num) {\r\n                hi = mid - 1;\r\n            } else {\r\n                lo = mid + 1;\r\n            }\r\n        }\r\n        list.add(lo, num);\r\n        res[i] = lo;\r\n    }\r\n}\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\r\n\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t <\/div>\r\n\t\t\t\t\t \r\n\t\t\t\t <\/div>\r\n <script>\r\n\t\tjQuery(function () {\r\n\t\t\tjQuery('#myTab_1607 a:first').tab('show')\r\n\t\t});\r\n\t\t\r\n\t\t\t\tjQuery(function(){\r\n\t\t\tvar b=\"fadeIn\";\r\n\t\t\tvar c;\r\n\t\t\tvar a;\r\n\t\t\td(jQuery(\"#myTab_1607 a\"),jQuery(\"#tab-content_1607\"));function d(e,f,g){\r\n\t\t\t\te.click(function(i){\r\n\t\t\t\t\ti.preventDefault();\r\n\t\t\t\t\tjQuery(this).tab(\"show\");\r\n\t\t\t\t\tvar h=jQuery(this).data(\"easein\");\r\n\t\t\t\t\tif(c){c.removeClass(a);}\r\n\t\t\t\t\tif(h){f.find(\"div.active\").addClass(\"animated \"+h);a=h;}\r\n\t\t\t\t\telse{if(g){f.find(\"div.active\").addClass(\"animated \"+g);a=g;}else{f.find(\"div.active\").addClass(\"animated \"+b);a=b;}}c=f.find(\"div.active\");\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t\t\r\n\r\n\t\tfunction do_resize(){\r\n\r\n\t\t\tvar width=jQuery( '.tab-content .tab-pane iframe' ).width();\r\n\t\t\tvar height=jQuery( '.tab-content .tab-pane iframe' ).height();\r\n\r\n\t\t\tvar toggleSize = true;\r\n\t\t\tjQuery('iframe').animate({\r\n\t\t\t    width: toggleSize ? width : 640,\r\n\t\t\t    height: toggleSize ? height : 360\r\n\t\t\t  }, 250);\r\n\r\n\t\t\t  toggleSize = !toggleSize;\r\n\t\t}\r\n\r\n\r\n\t<\/script>\r\n\t\t\t\t\r\n\t\t\t<br \/>\n[forminator_quiz id=&quot;1666&quot;]<\/p>\n<h4>Space Complexity: O(1)<\/h4>\n<p>This article tried to discuss Binary Search. Hope this blog helps you understand and solve the problem. To practice more problems on Searching you can check out <a href=\"#\"><\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>CONCEPTS USED: Binary Search DIFFICULTY LEVEL: Hard PROBLEM STATEMENT(SIMPLIFIED): Given an array A containing N elements, construct a new array countSmaller[] such that countSmaller[i] contains count of smaller elements on right side of each element A[i] in the array where (0 &lt;= i &lt; N). For Example: Input : A = [6, 4, 2, 1, [&hellip;]<\/p>\n","protected":false},"author":52,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[136],"tags":[],"class_list":["post-1598","post","type-post","status-publish","format-standard","hentry","category-binary-search"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Binary Search | Small Count | Prepbytes<\/title>\n<meta name=\"description\" content=\"Given an Array a Containing N Elements, Construct a New Array Countsmaller[] Such That Countsmaller[i] Contains Count of Smaller Elements on Right Side of Each Element A[i] in the Array Where (0 &lt;= I &lt; N).\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/prepbytes.com\/blog\/small-count\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Binary Search | Small Count | Prepbytes\" \/>\n<meta property=\"og:description\" content=\"Given an Array a Containing N Elements, Construct a New Array Countsmaller[] Such That Countsmaller[i] Contains Count of Smaller Elements on Right Side of Each Element A[i] in the Array Where (0 &lt;= I &lt; N).\" \/>\n<meta property=\"og:url\" content=\"https:\/\/prepbytes.com\/blog\/small-count\/\" \/>\n<meta property=\"og:site_name\" content=\"PrepBytes Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prepbytes0211\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-07-01T09:31:01+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-03-25T11:40:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645768112867-Article_485.png\" \/>\n<meta name=\"author\" content=\"Prepbytes\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Prepbytes\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/prepbytes.com\/blog\/small-count\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/small-count\/\"},\"author\":{\"name\":\"Prepbytes\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e\"},\"headline\":\"Small Count\",\"datePublished\":\"2020-07-01T09:31:01+00:00\",\"dateModified\":\"2022-03-25T11:40:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/small-count\/\"},\"wordCount\":239,\"commentCount\":0,\"publisher\":{\"@id\":\"http:\/\/43.205.93.38\/#organization\"},\"image\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/small-count\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645768112867-Article_485.png\",\"articleSection\":[\"binary search\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/prepbytes.com\/blog\/small-count\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/prepbytes.com\/blog\/small-count\/\",\"url\":\"https:\/\/prepbytes.com\/blog\/small-count\/\",\"name\":\"Binary Search | Small Count | Prepbytes\",\"isPartOf\":{\"@id\":\"http:\/\/43.205.93.38\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/small-count\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/small-count\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645768112867-Article_485.png\",\"datePublished\":\"2020-07-01T09:31:01+00:00\",\"dateModified\":\"2022-03-25T11:40:40+00:00\",\"description\":\"Given an Array a Containing N Elements, Construct a New Array Countsmaller[] Such That Countsmaller[i] Contains Count of Smaller Elements on Right Side of Each Element A[i] in the Array Where (0 &lt;= I &lt; N).\",\"breadcrumb\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/small-count\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/prepbytes.com\/blog\/small-count\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/prepbytes.com\/blog\/small-count\/#primaryimage\",\"url\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645768112867-Article_485.png\",\"contentUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645768112867-Article_485.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/prepbytes.com\/blog\/small-count\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"http:\/\/43.205.93.38\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"binary search\",\"item\":\"https:\/\/prepbytes.com\/blog\/category\/binary-search\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Small Count\"}]},{\"@type\":\"WebSite\",\"@id\":\"http:\/\/43.205.93.38\/#website\",\"url\":\"http:\/\/43.205.93.38\/\",\"name\":\"PrepBytes Blog\",\"description\":\"ONE-STOP RESOURCE FOR EVERYTHING RELATED TO CODING\",\"publisher\":{\"@id\":\"http:\/\/43.205.93.38\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"http:\/\/43.205.93.38\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"http:\/\/43.205.93.38\/#organization\",\"name\":\"Prepbytes\",\"url\":\"http:\/\/43.205.93.38\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp\",\"contentUrl\":\"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp\",\"width\":160,\"height\":160,\"caption\":\"Prepbytes\"},\"image\":{\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/prepbytes0211\/\",\"https:\/\/www.instagram.com\/prepbytes\/\",\"https:\/\/www.linkedin.com\/company\/prepbytes\/\",\"https:\/\/www.youtube.com\/channel\/UC0xGnHDrjUM1pDEK2Ka5imA\"]},{\"@type\":\"Person\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e\",\"name\":\"Prepbytes\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g\",\"caption\":\"Prepbytes\"},\"url\":\"https:\/\/prepbytes.com\/blog\/author\/gourav-jaincollegedekho-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Binary Search | Small Count | Prepbytes","description":"Given an Array a Containing N Elements, Construct a New Array Countsmaller[] Such That Countsmaller[i] Contains Count of Smaller Elements on Right Side of Each Element A[i] in the Array Where (0 &lt;= I &lt; N).","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/prepbytes.com\/blog\/small-count\/","og_locale":"en_US","og_type":"article","og_title":"Binary Search | Small Count | Prepbytes","og_description":"Given an Array a Containing N Elements, Construct a New Array Countsmaller[] Such That Countsmaller[i] Contains Count of Smaller Elements on Right Side of Each Element A[i] in the Array Where (0 &lt;= I &lt; N).","og_url":"https:\/\/prepbytes.com\/blog\/small-count\/","og_site_name":"PrepBytes Blog","article_publisher":"https:\/\/www.facebook.com\/prepbytes0211\/","article_published_time":"2020-07-01T09:31:01+00:00","article_modified_time":"2022-03-25T11:40:40+00:00","og_image":[{"url":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645768112867-Article_485.png","type":"","width":"","height":""}],"author":"Prepbytes","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Prepbytes","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/prepbytes.com\/blog\/small-count\/#article","isPartOf":{"@id":"https:\/\/prepbytes.com\/blog\/small-count\/"},"author":{"name":"Prepbytes","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e"},"headline":"Small Count","datePublished":"2020-07-01T09:31:01+00:00","dateModified":"2022-03-25T11:40:40+00:00","mainEntityOfPage":{"@id":"https:\/\/prepbytes.com\/blog\/small-count\/"},"wordCount":239,"commentCount":0,"publisher":{"@id":"http:\/\/43.205.93.38\/#organization"},"image":{"@id":"https:\/\/prepbytes.com\/blog\/small-count\/#primaryimage"},"thumbnailUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645768112867-Article_485.png","articleSection":["binary search"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/prepbytes.com\/blog\/small-count\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/prepbytes.com\/blog\/small-count\/","url":"https:\/\/prepbytes.com\/blog\/small-count\/","name":"Binary Search | Small Count | Prepbytes","isPartOf":{"@id":"http:\/\/43.205.93.38\/#website"},"primaryImageOfPage":{"@id":"https:\/\/prepbytes.com\/blog\/small-count\/#primaryimage"},"image":{"@id":"https:\/\/prepbytes.com\/blog\/small-count\/#primaryimage"},"thumbnailUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645768112867-Article_485.png","datePublished":"2020-07-01T09:31:01+00:00","dateModified":"2022-03-25T11:40:40+00:00","description":"Given an Array a Containing N Elements, Construct a New Array Countsmaller[] Such That Countsmaller[i] Contains Count of Smaller Elements on Right Side of Each Element A[i] in the Array Where (0 &lt;= I &lt; N).","breadcrumb":{"@id":"https:\/\/prepbytes.com\/blog\/small-count\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/prepbytes.com\/blog\/small-count\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/prepbytes.com\/blog\/small-count\/#primaryimage","url":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645768112867-Article_485.png","contentUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645768112867-Article_485.png"},{"@type":"BreadcrumbList","@id":"https:\/\/prepbytes.com\/blog\/small-count\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"http:\/\/43.205.93.38\/"},{"@type":"ListItem","position":2,"name":"binary search","item":"https:\/\/prepbytes.com\/blog\/category\/binary-search\/"},{"@type":"ListItem","position":3,"name":"Small Count"}]},{"@type":"WebSite","@id":"http:\/\/43.205.93.38\/#website","url":"http:\/\/43.205.93.38\/","name":"PrepBytes Blog","description":"ONE-STOP RESOURCE FOR EVERYTHING RELATED TO CODING","publisher":{"@id":"http:\/\/43.205.93.38\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/43.205.93.38\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"http:\/\/43.205.93.38\/#organization","name":"Prepbytes","url":"http:\/\/43.205.93.38\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/","url":"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp","contentUrl":"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp","width":160,"height":160,"caption":"Prepbytes"},"image":{"@id":"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/prepbytes0211\/","https:\/\/www.instagram.com\/prepbytes\/","https:\/\/www.linkedin.com\/company\/prepbytes\/","https:\/\/www.youtube.com\/channel\/UC0xGnHDrjUM1pDEK2Ka5imA"]},{"@type":"Person","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e","name":"Prepbytes","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g","caption":"Prepbytes"},"url":"https:\/\/prepbytes.com\/blog\/author\/gourav-jaincollegedekho-com\/"}]}},"_links":{"self":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/1598","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/users\/52"}],"replies":[{"embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/comments?post=1598"}],"version-history":[{"count":9,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/1598\/revisions"}],"predecessor-version":[{"id":8232,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/1598\/revisions\/8232"}],"wp:attachment":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/media?parent=1598"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/categories?post=1598"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/tags?post=1598"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}