{"id":6119,"date":"2021-12-27T10:37:12","date_gmt":"2021-12-27T10:37:12","guid":{"rendered":"https:\/\/www.prepbytes.com\/blog\/?p=6119"},"modified":"2022-08-22T08:03:52","modified_gmt":"2022-08-22T08:03:52","slug":"aman-string","status":"publish","type":"post","link":"https:\/\/prepbytes.com\/blog\/aman-string\/","title":{"rendered":"Aman String"},"content":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645095363507-Article_251.png\" alt=\"\" \/><\/p>\n<h3>Concepts Used<\/h3>\n<blockquote>\n<p>Strings<\/p>\n<\/blockquote>\n<h3>Difficulty Level<\/h3>\n<blockquote>\n<p>Easy<\/p>\n<\/blockquote>\n<h3>Problem Statement (Simplified):<\/h3>\n<blockquote>\n<p>Find the total number of pairs of indexes (<b>i , j<\/b>) such as subString(<b>i , j<\/b>) contains <B>aman<\/B> atleast once.<\/p>\n<\/blockquote>\n<p><a href=\"https:\/\/mycode.prepbytes.com\/problems\/strings\/AMANSTR\" title=\"Go to mycode.prepbytes.com\" target=\"_blank\" rel=\"noopener noreferrer\"><u><strong><\/strong><\/u><\/a><\/p>\n<h4>Test Case<\/h4>\n<pre><code>Input:\n1\namanaaamanc\n\nOutput:\n20\n\nExplanation:\nSubstrings containing \"aman\" atleast once in it starts at given indexes (1,4), (1, 5), (1, 6), (1, 7), (1, 8), (1,9), (1, 10), (1, 11), (2,10), (2,11), (3,10), (3,11), (4,10), (4,11), (5,10), (5,11), (6,10), (6,11), (7,10), and (7,11). So, total 20 substrings are found.<\/code><\/pre>\n<h3>Solving Approach :<\/h3>\n<h4>Bruteforce Approach:<\/h4>\n<ol>\n<li>For a start we can find all substrings of the given string and then check if the given string contains <B>aman<\/B> or not.<\/li>\n<li>We can find the total number of substrings in <b>O(N<sup>2<\/sup>)<\/b> time and for each string finding <B>aman<\/B> takes <b>O(N)<\/b> time in the worst case. So, the total time complexity of this approach is <b>O(N<sup>3<\/sup>)<\/b>.<\/li>\n<li>Discussed approach is very lengthy and inefficient. So we have to find a new efficient approach to solve this problem.<\/li>\n<\/ol>\n<h4>Efficient Approach:<\/h4>\n<ol>\n<li>\n<p>For a given substring of given string <b>S<\/b>, we can calculate the total number of pairs in it by, subtracting the sum of <b>3<\/b> and index of the first appearance of <b>aman<\/b> from the length of the substring.<\/p>\n<pre><code>    Total Number of pairs = len(sub) - (3 + ind)\n    and len(sub) = len(S) - start\n\n    where,\n\n    len(sub) = length of substring\n    len(S) = length of String\n    ind = index at which \"aman\" appeared for the first time in Substring 'sub'<\/code><\/pre>\n<\/li>\n<li>\n<p>We calculate this for all substrings from index 0 to last index and add that to our final count.<\/p>\n<\/li>\n<li>\n<p>We print the final <b>count<\/b><\/p>\n<\/li>\n<\/ol>\n<h4>Example<\/h4>\n<ul>\n<li>\n<p>Lets take string given in test case i.e. <b>amanaaamanc<\/b>.<br \/>\nWe check all substrings of given string ending at last index of given string, and size of substring must be greater than or equal to <b>4<\/b> i.e, size of <b>aman<\/b><\/p>\n<p>Such substrings are,<br \/>\n<code>&quot;amanaaamanc&quot;<\/code><br \/>\n<code>&quot;manaaamanc&quot;<\/code><br \/>\n<code>&quot;anaaamanc&quot;<\/code><br \/>\n<code>&quot;naaamanc&quot;<\/code><br \/>\n<code>&quot;aaamanc&quot;<\/code><br \/>\n<code>&quot;aamanc&quot;<\/code><br \/>\n<code>&quot;amanc&quot;<\/code><br \/>\n<code>&quot;manc&quot;<\/code><br \/>\nSo we check, total number of substrings containing <b>aman<\/b> atleast once.<\/p>\n<\/li>\n<li>\n<p>For all substrings above:<\/p>\n<\/li>\n<\/ul>\n<p><strong><u>amanaaamanc<\/u>:<\/strong><\/p>\n<ul>\n<li>We observe fist appearance of <b>aman<\/b> at index 0, so total number of pairs will be<br \/>\n<code>Length-(index+3)<\/code><br \/>\n<code>11-(0+3)<\/code><br \/>\n<code>11-3<\/code><br \/>\n<code>8<\/code>  <\/li>\n<li>So, there will be total <b>8<\/b> pairs containing <b>aman<\/b> atleast once. These pairs are <code>(0,3), (0,4), (0,5), (0,6), (0,7), (0,8), (0,9), (0,10), and (0,11)<\/code>.      <\/li>\n<\/ul>\n<p><strong><u>manaaamanc<\/u>:<\/strong><\/p>\n<ul>\n<li>\n<p>We observe fist appearance of <b>aman<\/b> at index 5, so total number of pairs will be<br \/>\n<code>Length-(index+3)<\/code><br \/>\n<code>10-(5+3)<\/code><br \/>\n<code>10-8<\/code><br \/>\n<code>2<\/code>  <\/p>\n<\/li>\n<li>\n<p>So, there will be total <b>2<\/b> pairs containing <b>aman<\/b> atleast once. These pairs are <code>(5,8) and (5,9)<\/code>.<\/p>\n<\/li>\n<\/ul>\n<p><strong><u>anaaamanc<\/u>:<\/strong><\/p>\n<ul>\n<li>\n<p>We observe fist appearance of <b>aman<\/b> at index 4, so total number of pairs will be<br \/>\n<code>Length-(index+3)<\/code><br \/>\n<code>9-(4+3)<\/code><br \/>\n<code>9-7<\/code><br \/>\n<code>2<\/code>  <\/p>\n<\/li>\n<li>\n<p>So, there will be total <b>2<\/b> pairs containing <b>aman<\/b> atleast once. These pairs are <code>(4,7) and (4,8)<\/code>.<\/p>\n<\/li>\n<\/ul>\n<p><strong><u>naaamanc<\/u>:<\/strong><\/p>\n<ul>\n<li>\n<p>We observe fist appearance of <b>aman<\/b> at index 3, so total number of pairs will be<br \/>\n<code>Length-(index+3)<\/code><br \/>\n<code>8-(3+3)<\/code><br \/>\n<code>8-6<\/code><br \/>\n<code>2<\/code>  <\/p>\n<\/li>\n<li>\n<p>So, there will be total <b>2<\/b> pairs containing <b>aman<\/b> atleast once. These pairs are <code>(3,6) and (3,7)<\/code>.    <\/p>\n<\/li>\n<\/ul>\n<p><strong><u>aaamanc<\/u>:<\/strong><\/p>\n<ul>\n<li>\n<p>We observe fist appearance of <code>&quot;aman&quot;<\/code> at index 2, so total number of pairs will be<br \/>\n<code>Length-(index+3)<\/code><br \/>\n<code>7-(2+3)<\/code><br \/>\n<code>7-5<\/code><br \/>\n<code>2<\/code>  <\/p>\n<\/li>\n<li>\n<p>So, there will be total <b>2<\/b> pairs containing <b>aman<\/b> atleast once. These pairs are <code>(2,5) and (2,6)<\/code>.<\/p>\n<\/li>\n<\/ul>\n<p><strong><u>aamanc<\/u>:<\/strong><\/p>\n<ul>\n<li>\n<p>We observe fist appearance of <b>aman<\/b> at index 1, so total number of pairs will be<br \/>\n<code>Length-(index+3)<\/code><br \/>\n<code>6-(1+3)<\/code><br \/>\n<code>6-4<\/code><br \/>\n<code>2<\/code>  <\/p>\n<\/li>\n<li>\n<p>So, there will be total <b><\/b> pairs containing <b>aman<\/b> atleast once. These pairs are <code>(1,4) and (1,5)<\/code>.<\/p>\n<\/li>\n<\/ul>\n<p><strong><u>amanc<\/u>:<\/strong><\/p>\n<ul>\n<li>\n<p>We observe fist appearance of <b>aman<\/b> at index 0, so total number of pairs will be<br \/>\n<code>Length-(index+3)<\/code><br \/>\n<code>5-(0+3)<\/code><br \/>\n<code>5-3<\/code><br \/>\n<code>2<\/code>  <\/p>\n<\/li>\n<li>\n<p>So, there will be total <b><\/b> pairs containing <b>aman<\/b> atleast once. These pairs are <code>(0,3) and (0,4)<\/code>.<\/p>\n<\/li>\n<\/ul>\n<p><strong><u>manc<\/u>:<\/strong><\/p>\n<ul>\n<li>We don&#8217;t find <b>aman<\/b> in given string.  <\/li>\n<li>So, there will be total <b>0<\/b> pairs containing <b>aman<\/b> atleast once.<\/li>\n<li>On counting total pairs from above-given procedure, we find total of <b>20<\/b> pairs.<\/li>\n<\/ul>\n<h3>Solutions<\/h3>\n\t\t\t\t\t\t<style>\r\n\t\t\t\t\r\n\t\t\t\t\t#tab_container_735 {\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_735 .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_735 .wpsm_nav-tabs {\r\n    border-bottom: 0px solid #ddd;\r\n}\r\n#tab_container_735 .wpsm_nav-tabs > li.active > a, #tab_container_735 .wpsm_nav-tabs > li.active > a:hover, #tab_container_735 .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_735 .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_735 .wpsm_nav-tabs > li > a:focus {\r\noutline: 0px !important;\r\n}\r\n\r\n#tab_container_735 .wpsm_nav-tabs > li > a:before {\r\n\tdisplay:none !important;\r\n}\r\n#tab_container_735 .wpsm_nav-tabs > li > a:after {\r\n\tdisplay:none !important ;\r\n}\r\n#tab_container_735 .wpsm_nav-tabs > li{\r\npadding:0px !important ;\r\nmargin:0px;\r\n}\r\n\r\n#tab_container_735 .wpsm_nav-tabs > li > a:hover , #tab_container_735 .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_735 .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_735 .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_735 .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_735 .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_735 .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_735 .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_735 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_735 .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_735 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_735 .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_735 .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_735\" >\r\n\t \r\n\t\t\t\t\t<ul class=\"wpsm_nav wpsm_nav-tabs\" role=\"tablist\" id=\"myTab_735\">\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_735_1\" aria-controls=\"tabs_desc_735_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_735_2\" aria-controls=\"tabs_desc_735_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>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_735_3\" aria-controls=\"tabs_desc_735_3\" 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\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_735_4\" aria-controls=\"tabs_desc_735_4\" 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>Python<\/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_735\">\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_735_1\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"c\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"c\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\n#include&lt;stdio.h&gt;\r\n\r\nint main(){\r\n\r\n  int test;\r\n  scanf(&quot;%d&quot;,&amp;test);\r\n\r\n  while(test--){\r\n\r\n    char a[100000];\r\n    scanf(&quot;%s&quot;,a);\r\n\r\n    int count = 0;\r\n\r\n      for(int i=0; i&lt;strlen(a); i++){\r\n        int index = -1;\r\n        for(int j=i; j+3&lt;strlen(a); j++){\r\n          if(a[j]=='a' &amp;&amp; a[j+1]=='m' &amp;&amp; a[j+2]=='a' &amp;&amp; a[j+3] == 'n'){\r\n            index = j-i;\r\n            break;\r\n          }\r\n        }\r\n\r\n        if(index != -1)\r\n          count += strlen(a) - ( i + 3 + index  );\r\n\r\n      }\r\n\r\n    printf(&quot;%d&#92;n&quot;,count);\r\n  }\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\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane \" id=\"tabs_desc_735_2\">\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#include&lt;bits\/stdc++.h&gt;\r\nusing namespace std;\r\n\r\nint main(){\r\n\r\n  int test;\r\n  cin&gt;&gt;test;\r\n\r\n  while(test--){\r\n\r\n    char a[100000];\r\n    cin&gt;&gt;a;\r\n\r\n    int count = 0;\r\n\r\n      for(int i=0; i&lt;strlen(a); i++){\r\n        int index = -1;\r\n        for(int j=i; j+3&lt;strlen(a); j++){\r\n          if(a[j]=='a' &amp;&amp; a[j+1]=='m' &amp;&amp; a[j+2]=='a' &amp;&amp; a[j+3] == 'n'){\r\n            index = j-i;\r\n            break;\r\n          }\r\n        }\r\n\r\n        if(index != -1)\r\n          count += strlen(a) - ( i + 3 + index  );\r\n\r\n      }\r\n\r\n    cout&lt;&lt;count&lt;&lt;endl;\r\n  }\r\n\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\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane \" id=\"tabs_desc_735_3\">\r\n\t\t\t\t\t\t\t\t<!-- 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\nimport java.util.*;\r\nimport java.io.*;\r\nimport java.lang.Math;\r\n\r\npublic class Main {\r\npublic static void main(String args[]) throws IOException {\r\n\r\n    Scanner sc= new Scanner(System.in);\r\n    int test = sc.nextInt();\r\n    while(test != 0){\r\n\r\n        String a = sc.next();\r\n\r\n        int count = 0;\r\n\r\n        for(int i=0; i&lt;a.length(); i++){\r\n          int index = -1;\r\n          for(int j=i; j+3&lt;a.length(); j++){\r\n            if(a.charAt(j)=='a' &amp;&amp; a.charAt(j+1)=='m' &amp;&amp; a.charAt(j+2)=='a' &amp;&amp; a.charAt(j+3) == 'n'){\r\n              index = j-i;\r\n              break;\r\n            }\r\n          }\r\n\r\n          if(index != -1)\r\n            count += a.length() - ( i + 3 + index  );\r\n\r\n        }\r\n\r\n        System.out.println(count);\r\n        test--;\r\n    }\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\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane \" id=\"tabs_desc_735_4\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"Python\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"Python\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\nfor _ in range(int(input())):\r\n\t\r\n\ta = input()\r\n\tcount = 0\r\n\r\n\tfor i in range(len(a)):\r\n\t\t\r\n\t\tindex = -1\r\n\t\t\r\n\t\tfor j in range(i, len(a) - 3):\r\n\t\t\r\n\t\t\tif(a[j] == 'a' and a[j+1] == 'm' and a[j+2] == 'a' and a[j+3] == 'n'):\r\n\t\t\r\n\t\t\t\tindex = j-i\r\n\t\t\t\tbreak\r\n\t\t\r\n\t\t\r\n\r\n\t\tif(index != -1):\r\n\t\t\tcount += len(a) - ( i + 3 + index )\r\n\r\n\tprint(count)\r\n\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\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_735 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_735 a\"),jQuery(\"#tab-content_735\"));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\n<p>[forminator_quiz id=&quot;744&quot;]<\/p>\n<p><strong>Space Complexity<\/strong> of this approach would be <b>O(1)<\/b>.<\/p>\n<p>This article tried to discuss the concept of <strong>Strings<\/strong>. Hope this blog helps you understand and solve the problem. To practice more problems on Strings you can check out <a href=\"#\"><\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Concepts Used Strings Difficulty Level Easy Problem Statement (Simplified): Find the total number of pairs of indexes (i , j) such as subString(i , j) contains aman atleast once. Test Case Input: 1 amanaaamanc Output: 20 Explanation: Substrings containing &#8220;aman&#8221; atleast once in it starts at given indexes (1,4), (1, 5), (1, 6), (1, 7), [&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":[138],"tags":[],"class_list":["post-6119","post","type-post","status-publish","format-standard","hentry","category-strings-interview-programming"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Aman String - PrepBytes Blog<\/title>\n<meta name=\"description\" content=\"Get the knowledge on Aman string interview questions through prepbytes online programs and other strings interview programming questions\" \/>\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\/aman-string\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Aman String - PrepBytes Blog\" \/>\n<meta property=\"og:description\" content=\"Get the knowledge on Aman string interview questions through prepbytes online programs and other strings interview programming questions\" \/>\n<meta property=\"og:url\" content=\"https:\/\/prepbytes.com\/blog\/aman-string\/\" \/>\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=\"2021-12-27T10:37:12+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-08-22T08:03:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645095363507-Article_251.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=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/prepbytes.com\/blog\/aman-string\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/aman-string\/\"},\"author\":{\"name\":\"Prepbytes\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e\"},\"headline\":\"Aman String\",\"datePublished\":\"2021-12-27T10:37:12+00:00\",\"dateModified\":\"2022-08-22T08:03:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/aman-string\/\"},\"wordCount\":516,\"commentCount\":0,\"publisher\":{\"@id\":\"http:\/\/43.205.93.38\/#organization\"},\"image\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/aman-string\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645095363507-Article_251.png\",\"articleSection\":[\"Strings Interview Programming\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/prepbytes.com\/blog\/aman-string\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/prepbytes.com\/blog\/aman-string\/\",\"url\":\"https:\/\/prepbytes.com\/blog\/aman-string\/\",\"name\":\"Aman String - PrepBytes Blog\",\"isPartOf\":{\"@id\":\"http:\/\/43.205.93.38\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/aman-string\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/aman-string\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645095363507-Article_251.png\",\"datePublished\":\"2021-12-27T10:37:12+00:00\",\"dateModified\":\"2022-08-22T08:03:52+00:00\",\"description\":\"Get the knowledge on Aman string interview questions through prepbytes online programs and other strings interview programming questions\",\"breadcrumb\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/aman-string\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/prepbytes.com\/blog\/aman-string\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/prepbytes.com\/blog\/aman-string\/#primaryimage\",\"url\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645095363507-Article_251.png\",\"contentUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645095363507-Article_251.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/prepbytes.com\/blog\/aman-string\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"http:\/\/43.205.93.38\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Strings Interview Programming\",\"item\":\"https:\/\/prepbytes.com\/blog\/category\/strings-interview-programming\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Aman String\"}]},{\"@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":"Aman String - PrepBytes Blog","description":"Get the knowledge on Aman string interview questions through prepbytes online programs and other strings interview programming questions","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\/aman-string\/","og_locale":"en_US","og_type":"article","og_title":"Aman String - PrepBytes Blog","og_description":"Get the knowledge on Aman string interview questions through prepbytes online programs and other strings interview programming questions","og_url":"https:\/\/prepbytes.com\/blog\/aman-string\/","og_site_name":"PrepBytes Blog","article_publisher":"https:\/\/www.facebook.com\/prepbytes0211\/","article_published_time":"2021-12-27T10:37:12+00:00","article_modified_time":"2022-08-22T08:03:52+00:00","og_image":[{"url":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645095363507-Article_251.png","type":"","width":"","height":""}],"author":"Prepbytes","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Prepbytes","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/prepbytes.com\/blog\/aman-string\/#article","isPartOf":{"@id":"https:\/\/prepbytes.com\/blog\/aman-string\/"},"author":{"name":"Prepbytes","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e"},"headline":"Aman String","datePublished":"2021-12-27T10:37:12+00:00","dateModified":"2022-08-22T08:03:52+00:00","mainEntityOfPage":{"@id":"https:\/\/prepbytes.com\/blog\/aman-string\/"},"wordCount":516,"commentCount":0,"publisher":{"@id":"http:\/\/43.205.93.38\/#organization"},"image":{"@id":"https:\/\/prepbytes.com\/blog\/aman-string\/#primaryimage"},"thumbnailUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645095363507-Article_251.png","articleSection":["Strings Interview Programming"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/prepbytes.com\/blog\/aman-string\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/prepbytes.com\/blog\/aman-string\/","url":"https:\/\/prepbytes.com\/blog\/aman-string\/","name":"Aman String - PrepBytes Blog","isPartOf":{"@id":"http:\/\/43.205.93.38\/#website"},"primaryImageOfPage":{"@id":"https:\/\/prepbytes.com\/blog\/aman-string\/#primaryimage"},"image":{"@id":"https:\/\/prepbytes.com\/blog\/aman-string\/#primaryimage"},"thumbnailUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645095363507-Article_251.png","datePublished":"2021-12-27T10:37:12+00:00","dateModified":"2022-08-22T08:03:52+00:00","description":"Get the knowledge on Aman string interview questions through prepbytes online programs and other strings interview programming questions","breadcrumb":{"@id":"https:\/\/prepbytes.com\/blog\/aman-string\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/prepbytes.com\/blog\/aman-string\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/prepbytes.com\/blog\/aman-string\/#primaryimage","url":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645095363507-Article_251.png","contentUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645095363507-Article_251.png"},{"@type":"BreadcrumbList","@id":"https:\/\/prepbytes.com\/blog\/aman-string\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"http:\/\/43.205.93.38\/"},{"@type":"ListItem","position":2,"name":"Strings Interview Programming","item":"https:\/\/prepbytes.com\/blog\/category\/strings-interview-programming\/"},{"@type":"ListItem","position":3,"name":"Aman String"}]},{"@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\/6119","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=6119"}],"version-history":[{"count":6,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/6119\/revisions"}],"predecessor-version":[{"id":8337,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/6119\/revisions\/8337"}],"wp:attachment":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/media?parent=6119"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/categories?post=6119"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/tags?post=6119"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}