首页 > 代码库 > bzoj 3858: Number Transformation
bzoj 3858: Number Transformation
3858: Number Transformation
Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 82 Solved: 41
[Submit][Status]
Description
Teacher Mai has an integer x.
He does the following operations k times. In the i-th operation, x becomes the least integer no less than x, which is the multiple of i.
He wants to know what is the number x now.
Input
There are multiple test cases, terminated by a line "0 0".
For each test case, the only one line contains two integers x,k(1<=x<=10^10, 1<=k<=10^10).
Output
For each test case, output one line "Case #k: x", where k is the case number counting from 1.
Sample Input
2520 10
2520 20
0 0
2520 20
0 0
Sample Output
Case #1: 2520
Case #2: 2600
Case #2: 2600
HINT
Source
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;typedef long long qword;int main(){ freopen("input.txt","r",stdin); qword n,m; int i; qword t; int cnt=0; while (scanf("%lld%lld",&n,&m),cnt++,n+m) { t=0; for (i=1;i<=m;i++) { n=(n/i+(n%i!=0))*i; if (n/i==t)break; t=n/i; } printf("Case #%d: %lld\n",cnt,m*t); }}
bzoj 3858: Number Transformation
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。