HDU 6043 - KazaQ's Socks | 2017 Multi-University Training Contest 1

/*
HDU 6043 - KazaQ's Socks [ 找规律 ] | 2017 Multi-University Training Contest 1
题意:
一共 n 双袜子编号 1~n,每天早上选取编号最小的一双穿,
当晚上发现只剩一双袜子能穿时,把之前的袜子都洗了,
明天晚上就可以穿了。
问第 k 天穿的是编号为几的袜子
分析:
n = 3时模拟每天穿的袜子 : 1 2 3 1 2 1 3 1 2 1 3 ...
规律如上
*/
#include <bits/stdc++.h>
using namespace std;
long long n, k;
int main()
{
int t = 0;
while (~scanf("%lld%lld", &n, &k))
{
printf("Case #%d: ", ++t);
if (k <= n) printf("%lld\n", k);
else
{
k -= n;
long long a = k/(n-1), b = k%(n-1);
if (b != 0) printf("%lld\n", b);
else if (a % 2) printf("%lld\n", n-1);
else printf("%lld\n", n);
}
}
}

  

上一篇:计算机图形学 学习笔记 输出图元


下一篇:Best Free Hacking E-Books 2017 In PDF Format