summaryrefslogtreecommitdiff
path: root/sonstiges/josephus2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sonstiges/josephus2.cpp')
-rw-r--r--sonstiges/josephus2.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/sonstiges/josephus2.cpp b/sonstiges/josephus2.cpp
new file mode 100644
index 0000000..7676e3c
--- /dev/null
+++ b/sonstiges/josephus2.cpp
@@ -0,0 +1,8 @@
+int rotateLeft(int n) { //returns the number of the last survivor (1 based)
+ for (int i = 31; i >= 0; i--)
+ if (n & (1 << i)) {
+ n &= ~(1 << i);
+ break;
+ }
+ n <<= 1; n++; return n;
+} \ No newline at end of file