本蒟蒻的第一篇题解
本题可以分为两个模块 我太聪明了
第一方面——几天取完
让我们分析一下样例
样例:8
可以化为:1 2 3 4 5 6 7 8
把x取余3,即每3位取一个
相当于取(去)1 4 7 三个数
即
int suan(int x){
if(x%3==0){
q=x/3;
a=x-q;
}else if(x%3==2){
q=(x+1)/3;---如果取余后不为0,给他加上以让他不为小数
a=x-q;
}else if(x%3==1){
q=(x+2)/3;---同上
a=x-q;
if(day==0){
day=tot+1;
}
}return a;
}
剩下:2 3 5 6 8
整一个计数器tot 每次取苹果调用计数器tot 即
tot++;
然后我们重复执行至小苹果数为0,然后break跳出
下一次取2 6
剩下:3 5 8
⊗以后每天就只能取余下的一个了
每次tot++
第二个模块——第n个在第几天取完
然后我们来解