取数问题(takenumber)

取数问题(takenumber)

测试数据来自 wjszez/1024

题目描述
任意给出正整数n和k, n和k的范围为:1<= n<=106,0<k<n.
然后按下列方法取数.
例如n=16,k=4
第一次取数 1 取数后的余数为16-1=15
第二次取数 2 取数后的余数为15-2=13
第三次取数 4 取数后的余数为13-4=9
第四次取数 8 取数后的余数为9-8=1
当第五次取数时,因余数为1,不够取,此时作如下处理
余数1+k(4)=5
再从1开始取
第五次取数 1 取数后的余数为5-1=4
第六次取数 2 取数后的余数为4-2=2
由于第七次取数4,但余数为2,又需重新加k,再从1开始取,经过验算
2+4=6
第七次取数 1 取数后的余数为6-1=5
第八次取数 2 取数后的余数为5-2=3
第九次取数 4 但不够取.
3+4=7
第九次取数 1 取数后的余数为7-1=6
第十次取数 2 取数后的余数为6-2=4
第十一次取数 4 取数后的余数为4-4=0 正好取完
由此可见,当n=16,k=4时,按上面方法11次取完.
输入格式
输入一行两个整数,分别表示n和k。
输出格式
若能取完,输出“OK”及取数的次数(中间用一个空格隔开),若永远都不能取完,则输出“ERROR”.
数据范围与提示
对于 20%的数据, 1 ≤ k < n ≤ 10。
对于 50%的数据, 1 ≤ k < n ≤ 100000, 1 ≤ k≤100。
对于 100%的数据,1 ≤ k < n ≤ 1000,000。
输入输出样例
样例1
输入样例
54945 36904
输出样例
OK 442156

信息

ID
1024
难度
(无)
分类
(无)
标签
递交数
0
已通过
0
通过率
?
上传者