T1:
贡献一幅解题题图。
按题意模拟即可(不要用数组!)
#include <iostream>
using namespace std;
main() {
int n;
cin>>n;
int d=0;
int ans=-1;
while(n) {//
if(n%3==1 and ans==-1) {
ans=d+1;
// n-=ans;
}
if(n%3!=0) n--;
int f=n/3;//计算被拿走苹果的个数。
n-=f;//算剩下的苹果个数
d++;//日期加一。
}
cout<<d<<" "<<ans;
}
T2:
贪心题。
首先,我们需要计算从当前站点到下一个站点的距离与车每升油可以前进的距离之间的比值。假设这个比值为 x,表示每一升油可以前进 x 公里。
然后,我们从起始站点开始遍历每个站点。在每个站点,我们都会计算当前油箱中的油可以前进的距离 y,如果 y 小于等