{"id":8144,"date":"2022-04-14T14:34:23","date_gmt":"2022-04-14T14:34:23","guid":{"rendered":"https:\/\/www.prepbytes.com\/blog\/?p=8144"},"modified":"2022-04-14T14:37:26","modified_gmt":"2022-04-14T14:37:26","slug":"contest-winner","status":"publish","type":"post","link":"https:\/\/prepbytes.com\/blog\/contest-winner\/","title":{"rendered":"Contest Winner"},"content":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645097537168-Article_290.png\" alt=\"\" \/><\/p>\n<h3>CONCEPTS USED:<\/h3>\n<blockquote>\n<p>Josephus Problem<\/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 a circular linked list containing <code>N<\/code> elements from <code>1<\/code> &#8211; <code>N<\/code> arranged in increasing order and an integer <code>M<\/code>. Your task is to keep eliminating M<sup>th<\/sup> element from the list, starting from the beginning till only one element is left in the list.<\/p>\n<p><strong><em>NOTE<\/em><\/strong> :  First, eliminates the M<sup>th<\/sup> element from the beginning, then again start eliminating from (M+1)<sup>th<\/sup> element. <\/p>\n<\/blockquote>\n<p><a href=\"https:\/\/mycode.prepbytes.com\/problems\/linked-list\/CONTESTWIN\" 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 : \n\nN = 5, K = 3\nlist = 1 -&gt; 2 -&gt; 3 -&gt; 4 -&gt; 5\n\nOutput : 4\n\nExplanation : \n\nThe 3rd element from the starting position is 3 which is removed first, 4 becomes new starting position\n\n1 -&gt; 2 -&gt; 4 -&gt; 5\n\nThen the 3rd element from position 4 i.e. 1 is removed, 2 becomes new starting position\n\n2 -&gt; 4 -&gt; 5\n\nThen 3rd element from position 2 i.e. 5 is removed, 2 again becomes new starting position\n\n2 -&gt; 4\n\nThen 3rd element from position 2 i.e. 2 itself is removed\n\n4 is the single element left and is the resultant element.<\/code><\/pre>\n<p><strong><em>Do you Know ?<\/em><\/strong><\/p>\n<blockquote>\n<p>This is a popular problem known as <code>Josephus Problem<\/code> related to a certain counting-out game.<br \/>\nPeople are standing in a circle waiting to be executed. Counting begins at a specified point in the circle and proceeds around the circle in a specified direction. After a specified number of people are skipped, the next person is executed. The procedure is repeated with the remaining people, starting with the next person, going in the same direction and skipping the same number of people, until only one person remains, and is freed.<\/p>\n<\/blockquote>\n<h3>SOLVING APPROACH:<\/h3>\n<h4>BRUTE FORCE METHOD:<\/h4>\n<blockquote>\n<ol>\n<li>\n<p>The idea is to simply move the head pointer of the linked list by <strong>K<\/strong> steps and and removing the <strong>K<sup>th<\/sup><\/strong> node, by assigning the <strong>(K+1)<sup>th<\/sup><\/strong> node address to the <strong>next<\/strong> pointer of <strong>(K-1)<sup>th<\/sup><\/strong> node.    <\/p>\n<\/li>\n<li>\n<p>Now considering <strong>(K+1)<sup>th<\/sup><\/strong> node as our new <code>head<\/code>, keep following the same procedure till a single element is left in the linked list.<\/p>\n<\/li>\n<li>\n<p><code>Time Complexity<\/code> of this solution is <strong>O(N<sup>2<\/sup>)<\/strong>`.<\/p>\n<\/li>\n<\/ol>\n<\/blockquote>\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_2035 {\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_2035 .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_2035 .wpsm_nav-tabs {\r\n    border-bottom: 0px solid #ddd;\r\n}\r\n#tab_container_2035 .wpsm_nav-tabs > li.active > a, #tab_container_2035 .wpsm_nav-tabs > li.active > a:hover, #tab_container_2035 .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_2035 .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_2035 .wpsm_nav-tabs > li > a:focus {\r\noutline: 0px !important;\r\n}\r\n\r\n#tab_container_2035 .wpsm_nav-tabs > li > a:before {\r\n\tdisplay:none !important;\r\n}\r\n#tab_container_2035 .wpsm_nav-tabs > li > a:after {\r\n\tdisplay:none !important ;\r\n}\r\n#tab_container_2035 .wpsm_nav-tabs > li{\r\npadding:0px !important ;\r\nmargin:0px;\r\n}\r\n\r\n#tab_container_2035 .wpsm_nav-tabs > li > a:hover , #tab_container_2035 .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_2035 .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_2035 .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_2035 .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_2035 .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_2035 .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_2035 .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_2035 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_2035 .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_2035 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_2035 .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_2035 .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_2035\" >\r\n\t \r\n\t\t\t\t\t<ul class=\"wpsm_nav wpsm_nav-tabs\" role=\"tablist\" id=\"myTab_2035\">\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_2035_1\" aria-controls=\"tabs_desc_2035_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_2035_2\" aria-controls=\"tabs_desc_2035_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\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_2035\">\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_2035_1\">\r\n\t\t\t\t\t\t\t\t\r\n\r\n<!-- 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\r\n#include &lt;stdio.h&gt;\r\n#include &lt;stdlib.h&gt;\r\ntypedef struct node\r\n{\r\n    int value;\r\n    struct node* next;\r\n}node;\r\n\r\nstruct node* getNode (struct node *head, int val)\r\n{\r\n    struct node *element = (struct node*) malloc(sizeof(struct node));\r\n    element-&gt;value = val ;\r\n    element-&gt;next = NULL ;\r\n    struct node *temp = head ;\r\n    if ( head == NULL ) {\r\n        head = element ;\r\n        head-&gt;next = head ;\r\n        return head ;\r\n    }\r\n    while (temp-&gt;next != head)\r\n        temp = temp-&gt;next ;\r\n    temp-&gt;next = element ;\r\n    element-&gt;next = head ;\r\n    return head ;\r\n}\r\n\r\nstruct node* ContestWinner(struct node *head, int k, int n)\r\n{\r\n    node *temp = head;\r\n\r\n    \/* finding the previous node of head *\/\r\n    while(temp-&gt;next != head){\r\n      temp = temp-&gt;next;\r\n    }\r\n\r\n    node *it = head;\r\n    node *prev = temp;\r\n    while(n)\r\n    {\r\n        \/* if only 1 element is left return it*\/\r\n        if(n == 1)\r\n        {\r\n            return it;\r\n            break;\r\n        }\r\n        int size = n;\r\n        int kk;\r\n        if(k &gt; size){\r\n          if(k%size == 0){\r\n            kk = size;\r\n          }\r\n          else{\r\n            kk = k%size;\r\n          }\r\n        }\r\n        else\r\n          kk = k;\r\n\r\n\r\n        \/* increment steps by k to reach the node to be deleted *\/\r\n        for(int i=0;i&lt;kk-1;i++){\r\n          prev = it;\r\n          it = it-&gt;next;\r\n        }\r\n        \/* delete the node by making its previous node point to its next node *\/       \r\n        prev-&gt;next = it-&gt;next;\r\n        it = prev-&gt;next;\r\n\r\n      \/* decrement the count of nodes *\/  \r\n      n--;\r\n\r\n    }\r\n}\r\n\r\nint main() {\r\n    int t;\r\n    scanf(\"%d\",&amp;t);\r\n    while(t--){\r\n        struct node *head = NULL, *temp ;\r\n        int size, i, val, M;\r\n\r\n        scanf(\"%d %d\",&amp;size, &amp;M);\r\n\r\n        for ( i = 0 ; i &lt; size ; i ++ ) {\r\n            scanf(\"%d\",&amp;val);\r\n            head = getNode(head, val) ;\r\n        }\r\n        temp = ContestWinner(head, M, size) ;\r\n        if ( temp != NULL )\r\n            printf(\"%d&#92;n\", temp-&gt;value) ;\r\n    }\r\n    return 0;\r\n}\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\r\n\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_2035_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\r\n#include &lt;bits\/stdc++.h&gt;\r\nusing namespace std;\r\ntypedef struct node\r\n{\r\n    int value;\r\n    struct node* next;\r\n}node;\r\n\r\nnode* getNode (node *head, int val)\r\n{\r\n    node *element = new node;\r\n    element-&gt;value = val ;\r\n    element-&gt;next = NULL ;\r\n    node *temp = head ;\r\n    if ( head == NULL ) {\r\n        head = element ;\r\n        head-&gt;next = head ;\r\n        return head ;\r\n    }\r\n    while (temp-&gt;next != head)\r\n        temp = temp-&gt;next ;\r\n    temp-&gt;next = element ;\r\n    element-&gt;next = head ;\r\n    return head ;\r\n}\r\n\r\nstruct node* ContestWinner(struct node *head, int k, int n)\r\n{\r\n    node *temp = head;\r\n\r\n    \/* finding the previous node of head *\/\r\n    while(temp-&gt;next != head){\r\n      temp = temp-&gt;next;\r\n    }\r\n\r\n    node *it = head;\r\n    node *prev = temp;\r\n    while(n)\r\n    {\r\n        \/* if only 1 element is left return it*\/\r\n        if(n == 1)\r\n        {\r\n            return it;\r\n        }\r\n        int size = n;\r\n        int kk;\r\n        if(k &gt; size){\r\n          if(k%size == 0){\r\n            kk = size;\r\n          }\r\n          else{\r\n            kk = k%size;\r\n          }\r\n        }\r\n        else\r\n          kk = k;\r\n\r\n\r\n        \/* increment steps by k to reach the node to be deleted *\/\r\n        for(int i=0;i&lt;kk-1;i++){\r\n          prev = it;\r\n          it = it-&gt;next;\r\n        }\r\n        \/* delete the node by making its previous node point to its next node *\/       \r\n        prev-&gt;next = it-&gt;next;\r\n        it = prev-&gt;next;\r\n\r\n      \/* decrement the count of nodes *\/  \r\n      n--;\r\n\r\n    }\r\n}\r\n\r\nint main() {\r\n    int t;\r\n    cin&gt;&gt;t;\r\n    while(t--){\r\n        node *head = NULL, *temp ;\r\n        int size, i, val, M;\r\n\r\n        cin&gt;&gt;size&gt;&gt;M;\r\n\r\n        for ( i = 0 ; i &lt; size ; i ++ ) {\r\n            cin&gt;&gt;val;\r\n            head = getNode(head, val) ;\r\n        }\r\n        temp = ContestWinner(head, M, size) ;\r\n        if ( temp != NULL )\r\n            cout&lt;&lt; temp-&gt;value&lt;&lt;endl ;\r\n    }\r\n    return 0;\r\n}\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\r\n\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_2035 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_2035 a\"),jQuery(\"#tab-content_2035\"));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<h4>EFFICIENT METHOD:<\/h4>\n<p><strong>OBSERVATION<\/strong>:<\/p>\n<p>Taking few different values of <code>n<\/code> and <code>k<\/code>, we can construct the following table :<\/p>\n<table>\n<thead>\n<tr>\n<th>n\/k<\/th>\n<th>1<\/th>\n<th>2<\/th>\n<th>3<\/th>\n<th>4<\/th>\n<th>5<\/th>\n<th>6<\/th>\n<th>7<\/th>\n<th>8<\/th>\n<th>9<\/th>\n<th>10<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>1<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>2<\/td>\n<td>1<\/td>\n<td>2<\/td>\n<td>1<\/td>\n<td>2<\/td>\n<td>1<\/td>\n<td>2<\/td>\n<td>1<\/td>\n<td>2<\/td>\n<td>1<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>3<\/td>\n<td>3<\/td>\n<td>2<\/td>\n<td>2<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>3<\/td>\n<td>3<\/td>\n<td>2<\/td>\n<td>2<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>4<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>2<\/td>\n<td>2<\/td>\n<td>3<\/td>\n<td>2<\/td>\n<td>3<\/td>\n<td>3<\/td>\n<td>4<\/td>\n<\/tr>\n<tr>\n<td>5<\/td>\n<td>5<\/td>\n<td>3<\/td>\n<td>4<\/td>\n<td>1<\/td>\n<td>2<\/td>\n<td>4<\/td>\n<td>4<\/td>\n<td>1<\/td>\n<td>2<\/td>\n<td>4<\/td>\n<\/tr>\n<tr>\n<td>6<\/td>\n<td>6<\/td>\n<td>5<\/td>\n<td>1<\/td>\n<td>5<\/td>\n<td>1<\/td>\n<td>4<\/td>\n<td>5<\/td>\n<td>3<\/td>\n<td>5<\/td>\n<td>2<\/td>\n<\/tr>\n<tr>\n<td>7<\/td>\n<td>7<\/td>\n<td>7<\/td>\n<td>4<\/td>\n<td>2<\/td>\n<td>6<\/td>\n<td>3<\/td>\n<td>5<\/td>\n<td>4<\/td>\n<td>7<\/td>\n<td>5<\/td>\n<\/tr>\n<tr>\n<td>8<\/td>\n<td>8<\/td>\n<td>1<\/td>\n<td>7<\/td>\n<td>6<\/td>\n<td>3<\/td>\n<td>1<\/td>\n<td>4<\/td>\n<td>4<\/td>\n<td>8<\/td>\n<td>7<\/td>\n<\/tr>\n<tr>\n<td>9<\/td>\n<td>9<\/td>\n<td>3<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>8<\/td>\n<td>7<\/td>\n<td>2<\/td>\n<td>3<\/td>\n<td>8<\/td>\n<td>8<\/td>\n<\/tr>\n<tr>\n<td>10<\/td>\n<td>10<\/td>\n<td>5<\/td>\n<td>4<\/td>\n<td>5<\/td>\n<td>3<\/td>\n<td>3<\/td>\n<td>9<\/td>\n<td>1<\/td>\n<td>7<\/td>\n<td>8<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<pre><code>With the help of the above table we can observe that the problem has below Recursive Structure :-\n\n  Josephus(n, k) = (Josephus(n - 1, k) + k-1) % n + 1\n\n  Josephus(1, k) = 1\n\nAs for any value of k, if the number of elements is 1, then it will be our answer.<\/code><\/pre>\n<blockquote>\n<ol>\n<li>\n<p>Now we can easily find the solution of <code>Josephus(n, k)<\/code> with the help of <code>Josephus(n - 1, k)<\/code>.<\/p>\n<\/li>\n<li>\n<p>For this simply run a loop till <code>n<\/code> and keep calculating &#8211;<br \/>\n<code>result = (result + k-1) % i + 1<\/code><br \/>\nwhere <code>(1 &lt;= i 3. This <\/code>result` is the element that will remain till the end.<\/p>\n<\/li>\n<\/ol>\n<\/blockquote>\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_2103 {\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_2103 .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_2103 .wpsm_nav-tabs {\r\n    border-bottom: 0px solid #ddd;\r\n}\r\n#tab_container_2103 .wpsm_nav-tabs > li.active > a, #tab_container_2103 .wpsm_nav-tabs > li.active > a:hover, #tab_container_2103 .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_2103 .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_2103 .wpsm_nav-tabs > li > a:focus {\r\noutline: 0px !important;\r\n}\r\n\r\n#tab_container_2103 .wpsm_nav-tabs > li > a:before {\r\n\tdisplay:none !important;\r\n}\r\n#tab_container_2103 .wpsm_nav-tabs > li > a:after {\r\n\tdisplay:none !important ;\r\n}\r\n#tab_container_2103 .wpsm_nav-tabs > li{\r\npadding:0px !important ;\r\nmargin:0px;\r\n}\r\n\r\n#tab_container_2103 .wpsm_nav-tabs > li > a:hover , #tab_container_2103 .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_2103 .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_2103 .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_2103 .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_2103 .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_2103 .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_2103 .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_2103 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_2103 .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_2103 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_2103 .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_2103 .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_2103\" >\r\n\t \r\n\t\t\t\t\t<ul class=\"wpsm_nav wpsm_nav-tabs\" role=\"tablist\" id=\"myTab_2103\">\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_2103_1\" aria-controls=\"tabs_desc_2103_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_2103_2\" aria-controls=\"tabs_desc_2103_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_2103_3\" aria-controls=\"tabs_desc_2103_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\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_2103\">\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_2103_1\">\r\n\t\t\t\t\t\t\t\t\r\n\r\n<!-- 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\r\n#include &lt;stdio.h&gt;\r\n#include &lt;stdlib.h&gt;\r\ntypedef struct node\r\n{\r\n    int value;\r\n    struct node* next;\r\n}node;\r\n\r\nstruct node* getNode (struct node *head, int val)\r\n{\r\n    struct node *element = (struct node*) malloc(sizeof(struct node));\r\n    element-&gt;value = val ;\r\n    element-&gt;next = NULL ;\r\n    struct node *temp = head ;\r\n    if ( head == NULL ) {\r\n        head = element ;\r\n        head-&gt;next = head ;\r\n        return head ;\r\n    }\r\n    while (temp-&gt;next != head)\r\n        temp = temp-&gt;next ;\r\n    temp-&gt;next = element ;\r\n    element-&gt;next = head ;\r\n    return head ;\r\n}\r\n\r\nstruct node* ContestWinner(struct node *head, int k, int n)\r\n{\r\n  \/* if 1 element is only there *\/\r\n  if(n == 1)\r\n    return head;\r\n\r\n  \/* for storing our resultant element *\/\r\n  int res = 0;\r\n\r\n  for(int i=1; i&lt;=n; i++){\r\n    res = (res + k-1)%i + 1;\r\n  }\r\n\r\n  \/* finding the node of resultant element *\/\r\n  for(int i=1; i&lt;res; i++){\r\n    head = head-&gt;next;\r\n  }\r\n\r\n  \/* marking its next node as NULL \r\n    and returning resultant node address *\/\r\n  head-&gt;next = NULL;\r\n  return head;\r\n}\r\n\r\nint main() {\r\n    int t;\r\n    scanf(\"%d\",&amp;t);\r\n    while(t--){\r\n        struct node *head = NULL, *temp ;\r\n        int size, i, val, M;\r\n\r\n        scanf(\"%d %d\",&amp;size, &amp;M);\r\n\r\n        for ( i = 0 ; i &lt; size ; i ++ ) {\r\n            scanf(\"%d\",&amp;val);\r\n            head = getNode(head, val) ;\r\n        }\r\n        temp = ContestWinner(head, M, size) ;\r\n        if ( temp != NULL )\r\n            printf(\"%d&#92;n\", temp-&gt;value) ;\r\n    }\r\n    return 0;\r\n}\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\r\n\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_2103_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\r\n#include &lt;bits\/stdc++.h&gt;\r\nusing namespace std;\r\ntypedef struct node\r\n{\r\n    int value;\r\n    struct node* next;\r\n}node;\r\n\r\nnode* getNode (node *head, int val)\r\n{\r\n    node *element = new node;\r\n    element-&gt;value = val ;\r\n    element-&gt;next = NULL ;\r\n    node *temp = head ;\r\n    if ( head == NULL ) {\r\n        head = element ;\r\n        head-&gt;next = head ;\r\n        return head ;\r\n    }\r\n    while (temp-&gt;next != head)\r\n        temp = temp-&gt;next ;\r\n    temp-&gt;next = element ;\r\n    element-&gt;next = head ;\r\n    return head ;\r\n}\r\n\r\nstruct node* ContestWinner(struct node *head, int k, int n)\r\n{\r\n  \/* if 1 element is only there *\/\r\n  if(n == 1)\r\n    return head;\r\n\r\n  \/* for storing our resultant element *\/\r\n  int res = 0;\r\n\r\n  for(int i=1; i&lt;=n; i++){\r\n    res = (res + k-1)%i + 1;\r\n  }\r\n\r\n  \/* finding the node of resultant element *\/\r\n  for(int i=1; i&lt;res; i++){\r\n    head = head-&gt;next;\r\n  }\r\n\r\n  \/* marking its next node as NULL \r\n    and returning resultant node address *\/\r\n  head-&gt;next = NULL;\r\n  return head;\r\n}\r\n\r\nint main() {\r\n    int t;\r\n    cin&gt;&gt;t;\r\n    while(t--){\r\n        node *head = NULL, *temp ;\r\n        int size, i, val, M;\r\n\r\n        cin&gt;&gt;size&gt;&gt;M;\r\n\r\n        for ( i = 0 ; i &lt; size ; i ++ ) {\r\n            cin&gt;&gt;val;\r\n            head = getNode(head, val) ;\r\n        }\r\n        temp = ContestWinner(head, M, size) ;\r\n        if ( temp != NULL )\r\n            cout&lt;&lt; temp-&gt;value&lt;&lt;endl ;\r\n    }\r\n    return 0;\r\n}\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\r\n\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_2103_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\n\r\nimport java.io.*;\r\nimport java.util.*;\r\n\r\npublic class Main {\r\n\r\n    static class SinglyLinkedListNode {\r\n        public int data;\r\n        public SinglyLinkedListNode next;\r\n\r\n        public SinglyLinkedListNode(int nodeData) {\r\n            this.data = nodeData;\r\n            this.next = null;\r\n        }\r\n    }\r\n\r\n    static class SinglyLinkedList {\r\n        public SinglyLinkedListNode head;\r\n        public SinglyLinkedListNode tail;\r\n\r\n        public SinglyLinkedList() {\r\n            this.head = null;\r\n            this.tail = null;\r\n        }\r\n\r\n        public void insertNode(int nodeData) {\r\n            SinglyLinkedListNode node = new SinglyLinkedListNode(nodeData);\r\n\r\n            if (this.head == null) {\r\n                this.head = node;\r\n            } else {\r\n                this.tail.next = node;\r\n            }\r\n\r\n            this.tail = node;\r\n        }\r\n    }\r\n\r\n    static void printLinkedList(SinglyLinkedListNode head) {\r\n        SinglyLinkedListNode temp = head;\r\n        while (temp != null) {\r\n            System.out.print(temp.data + \" \");\r\n            temp = temp.next;\r\n        }\r\n        System.out.println();\r\n    }\r\n\r\n  static SinglyLinkedListNode ContestWinner(SinglyLinkedListNode head, int k, int n)\r\n    {\r\n      \/* if 1 element is only there *\/\r\n      if(n == 1)\r\n        return head;\r\n\r\n      \/* for storing our resultant element *\/\r\n      int res = 0;\r\n\r\n      for(int i=1; i&lt;=n; i++){\r\n        res = (res + k-1)%i + 1;\r\n      }\r\n\r\n      \/* finding the node of resultant element *\/\r\n      for(int i=1; i&lt;res; i++){\r\n        head = head.next;\r\n      }\r\n\r\n      \/* marking its next node as NULL \r\n        and returning resultant node address *\/\r\n      head.next = null;\r\n      return head;\r\n    }\r\n    private static final Scanner scanner = new Scanner(System.in);\r\n\r\n    public static void main(String[] args) throws IOException {\r\n        int testCases = scanner.nextInt();\r\n        while (testCases-- &gt; 0) {\r\n            SinglyLinkedList llist = new SinglyLinkedList();\r\n            int size = scanner.nextInt();\r\n            int M = scanner.nextInt();\r\n            for (int i = 0; i &lt; size; i++) {\r\n                int llistItem = scanner.nextInt();\r\n                llist.insertNode(llistItem);\r\n            }\r\n            SinglyLinkedListNode temp = ContestWinner(llist.head, M, size);\r\n            System.out.println(temp.data);\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\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_2103 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_2103 a\"),jQuery(\"#tab-content_2103\"));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><strong>Space Complexity<\/strong>: <code>O(1)<\/code><\/p>\n<p>[forminator_quiz id=&quot;2129&quot;]<\/p>\n<p>This article tried to discuss Josephus Problem. Hope this blog helps you understand the concept. To practice more problems you can check out <a href=\"#\"><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>CONCEPTS USED: Josephus Problem DIFFICULTY LEVEL: Hard PROBLEM STATEMENT(SIMPLIFIED): Given a circular linked list containing N elements from 1 &#8211; N arranged in increasing order and an integer M. Your task is to keep eliminating Mth element from the list, starting from the beginning till only one element is left in the list. NOTE : [&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":[133],"tags":[],"class_list":["post-8144","post","type-post","status-publish","format-standard","hentry","category-josephus-problem"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Contest Winner | Josephus Problem | Prepbytes<\/title>\n<meta name=\"description\" content=\"This Is a Popular Problem Known as Josephus Problem Related to a Certain Counting-out Game.people Are Standing in a Circle Waiting to Be Executed.\" \/>\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\/contest-winner\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Contest Winner | Josephus Problem | Prepbytes\" \/>\n<meta property=\"og:description\" content=\"This Is a Popular Problem Known as Josephus Problem Related to a Certain Counting-out Game.people Are Standing in a Circle Waiting to Be Executed.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/prepbytes.com\/blog\/contest-winner\/\" \/>\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=\"2022-04-14T14:34:23+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-04-14T14:37:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645097537168-Article_290.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\/contest-winner\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/contest-winner\/\"},\"author\":{\"name\":\"Prepbytes\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e\"},\"headline\":\"Contest Winner\",\"datePublished\":\"2022-04-14T14:34:23+00:00\",\"dateModified\":\"2022-04-14T14:37:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/contest-winner\/\"},\"wordCount\":320,\"commentCount\":0,\"publisher\":{\"@id\":\"http:\/\/43.205.93.38\/#organization\"},\"image\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/contest-winner\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645097537168-Article_290.png\",\"articleSection\":[\"Josephus problem\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/prepbytes.com\/blog\/contest-winner\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/prepbytes.com\/blog\/contest-winner\/\",\"url\":\"https:\/\/prepbytes.com\/blog\/contest-winner\/\",\"name\":\"Contest Winner | Josephus Problem | Prepbytes\",\"isPartOf\":{\"@id\":\"http:\/\/43.205.93.38\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/contest-winner\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/contest-winner\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645097537168-Article_290.png\",\"datePublished\":\"2022-04-14T14:34:23+00:00\",\"dateModified\":\"2022-04-14T14:37:26+00:00\",\"description\":\"This Is a Popular Problem Known as Josephus Problem Related to a Certain Counting-out Game.people Are Standing in a Circle Waiting to Be Executed.\",\"breadcrumb\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/contest-winner\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/prepbytes.com\/blog\/contest-winner\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/prepbytes.com\/blog\/contest-winner\/#primaryimage\",\"url\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645097537168-Article_290.png\",\"contentUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645097537168-Article_290.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/prepbytes.com\/blog\/contest-winner\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"http:\/\/43.205.93.38\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Josephus problem\",\"item\":\"https:\/\/prepbytes.com\/blog\/category\/josephus-problem\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Contest Winner\"}]},{\"@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":"Contest Winner | Josephus Problem | Prepbytes","description":"This Is a Popular Problem Known as Josephus Problem Related to a Certain Counting-out Game.people Are Standing in a Circle Waiting to Be Executed.","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\/contest-winner\/","og_locale":"en_US","og_type":"article","og_title":"Contest Winner | Josephus Problem | Prepbytes","og_description":"This Is a Popular Problem Known as Josephus Problem Related to a Certain Counting-out Game.people Are Standing in a Circle Waiting to Be Executed.","og_url":"https:\/\/prepbytes.com\/blog\/contest-winner\/","og_site_name":"PrepBytes Blog","article_publisher":"https:\/\/www.facebook.com\/prepbytes0211\/","article_published_time":"2022-04-14T14:34:23+00:00","article_modified_time":"2022-04-14T14:37:26+00:00","og_image":[{"url":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645097537168-Article_290.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\/contest-winner\/#article","isPartOf":{"@id":"https:\/\/prepbytes.com\/blog\/contest-winner\/"},"author":{"name":"Prepbytes","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e"},"headline":"Contest Winner","datePublished":"2022-04-14T14:34:23+00:00","dateModified":"2022-04-14T14:37:26+00:00","mainEntityOfPage":{"@id":"https:\/\/prepbytes.com\/blog\/contest-winner\/"},"wordCount":320,"commentCount":0,"publisher":{"@id":"http:\/\/43.205.93.38\/#organization"},"image":{"@id":"https:\/\/prepbytes.com\/blog\/contest-winner\/#primaryimage"},"thumbnailUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645097537168-Article_290.png","articleSection":["Josephus problem"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/prepbytes.com\/blog\/contest-winner\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/prepbytes.com\/blog\/contest-winner\/","url":"https:\/\/prepbytes.com\/blog\/contest-winner\/","name":"Contest Winner | Josephus Problem | Prepbytes","isPartOf":{"@id":"http:\/\/43.205.93.38\/#website"},"primaryImageOfPage":{"@id":"https:\/\/prepbytes.com\/blog\/contest-winner\/#primaryimage"},"image":{"@id":"https:\/\/prepbytes.com\/blog\/contest-winner\/#primaryimage"},"thumbnailUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645097537168-Article_290.png","datePublished":"2022-04-14T14:34:23+00:00","dateModified":"2022-04-14T14:37:26+00:00","description":"This Is a Popular Problem Known as Josephus Problem Related to a Certain Counting-out Game.people Are Standing in a Circle Waiting to Be Executed.","breadcrumb":{"@id":"https:\/\/prepbytes.com\/blog\/contest-winner\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/prepbytes.com\/blog\/contest-winner\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/prepbytes.com\/blog\/contest-winner\/#primaryimage","url":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645097537168-Article_290.png","contentUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645097537168-Article_290.png"},{"@type":"BreadcrumbList","@id":"https:\/\/prepbytes.com\/blog\/contest-winner\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"http:\/\/43.205.93.38\/"},{"@type":"ListItem","position":2,"name":"Josephus problem","item":"https:\/\/prepbytes.com\/blog\/category\/josephus-problem\/"},{"@type":"ListItem","position":3,"name":"Contest Winner"}]},{"@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\/8144","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=8144"}],"version-history":[{"count":1,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/8144\/revisions"}],"predecessor-version":[{"id":8146,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/8144\/revisions\/8146"}],"wp:attachment":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/media?parent=8144"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/categories?post=8144"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/tags?post=8144"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}