POJ Problem 3931 Classmates题解
来源:互联网 发布:inputselect.js 编辑:程序博客网 时间:2024/06/05 02:15
类似于约瑟夫环问题,输入Mike的编号m和在环中剩余的人数k(包含Mike),求解Mike最少有多少名同学。
#include<iostream>using namespace std;typedef long long LL;LL joseph(LL m, LL k){ if(m == 1) return 2*k-1; else if(m%2 == 0){ LL n = m/2-1+k; if(n >= m) return n; else return 0; } else{ LL n1 = joseph((m+1)/2, k)*2; LL n2 = joseph((m-1)/2, k)*2+1; if(n2 == 1) n2 = 0; if(n1 > 0 && n2 > 0) return min(n1, n2); else return max(n1, n2); }}int main(){ LL m, k; while(cin >> m >> k){ if(m == 0 && k == 0) break; LL ans = joseph(m, k); if(ans > 0) cout << ans << endl; else cout << "Impossible" << endl; } return 0;}
0 0
- POJ Problem 3931 Classmates题解
- classmates
- POJ 1000 A+B Problem 题解
- HDU3448Bag Problem题解背包
- 【poj 3468】A Simple Problem with Integers 题意&题解&代码(C++)
- 7_6_K题 Jessica's Reading Problem题解[POJ 3320](尺取)
- HDU1166敌兵布阵&POJ 3468 A Simple Problem with Integers题解
- Family,Friends,classmates
- Ural 1544 Classmates 3
- Ural 1362 Classmates 2
- ural 1362Classmates 2
- URAL 1362. Classmates 2
- A+B Problem 题解综述
- POJ2480《Longge's problem》题解
- 【题解】codeforces776D The Door Problem
- POJ - 3265/USACO - Jan07 Gold Problem Solving 动态规划(DP) | 对USACO官方题解0ms程序的解释
- POJ 1011 题解
- poj-1050 题解
- CSS基础学生11-CSS用z-index进行层次堆叠
- $.extend()详解
- cglib中Enhancer的简单使用
- oracle数据库的blob和clob类型,是什么意思和区别
- Android开发 百度地图接入报错 APP Scode码校验失败的解决方案
- POJ Problem 3931 Classmates题解
- 基于大数据与深度学习的自然语言对话
- 简单的多线程下载和断点续传
- 线程基础(1)
- 机器学习特征工程总结
- c++重叠I/0
- IE 盒模型和W3C盒模型
- C++ STL : std::list
- 001——Binder 机制详解—Binder IPC 程序结构