HDU1443_Joseph

来源:互联网 发布:赵本山视频小品数据库 编辑:程序博客网 时间:2024/06/03 23:04

约瑟夫环。

 AC之路,  其修远兮。


#include<stdio.h>int main() {    int num;    int record[16] = {0};   //打个表,避免多次出现相同的输入且计算量过大    while ((scanf("%d", &num) != EOF) && num) {        if (record[num] != 0) {            printf("%d\n", record[num]);        } else {            for (int i = num+1; ; i++) {                int flag = 0, sum = 2 * num;                for (int j = i; ; j += i-1) {                    if (j > sum) {                        j = j % sum? (j%sum): sum;                    }                    if (j <= num) {                        break;                    } else {                        sum--;                    }                    if (sum == num) {                        flag = 1;                        break;                    }                }                if (flag == 1) {                    printf("%d\n", i);                    record[num] = i;                    break;                }            }        }    }    return 0;}


0 0
原创粉丝点击