Skip to content

Commit d3f8300

Browse files
Merge pull request #325 from alex-2003-47/main
Added Josephus Problem on recursion.
2 parents a9ea7b3 + da8d114 commit d3f8300

File tree

2 files changed

+45
-0
lines changed

2 files changed

+45
-0
lines changed

CPP/recursion/JosephusProblem.cpp

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
#include <bits/stdc++.h>
2+
3+
using namespace std;
4+
5+
void Josh(vector<int> person, int k, int index)
6+
{
7+
if (person.size() == 1) {
8+
cout << person[0] << endl;
9+
return;
10+
}
11+
index = ((index + k) % person.size());
12+
person.erase(person.begin() + index);
13+
Josh(person, k, index);
14+
}
15+
16+
int main()
17+
{
18+
int n = 14;
19+
int k = 2;
20+
k--;
21+
int index= 0;
22+
vector<int> person;
23+
for (int i = 1; i <= n; i++) {
24+
person.push_back(i);
25+
}
26+
Josh(person, k, index);
27+
}

Java/Array/Kadane_Algorithm.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import java.util.*;
2+
public class KadaneAlgo {
3+
public static void main(String[] args) {
4+
Scanner sc= new Scanner(System.in);
5+
int i,sum=0,maxsum=0,n=sc.nextInt();
6+
int[] a=new int[n];
7+
for(i=0;i<n;i++)
8+
{
9+
a[i]=sc.nextInt();
10+
sum=sum+a[i];
11+
if(sum>maxsum)
12+
maxsum=sum;
13+
if(sum<0)
14+
sum=0;
15+
}
16+
System.out.println(maxsum);
17+
}
18+
}

0 commit comments

Comments
 (0)