解题思路:空瓶总数n/3,得到喝的瓶数,而新的空瓶数=刚喝的瓶数+ n/3的余数;重复上述操作





注意事项:





参考代码:

#include<stdio.h>

#include<iostream>

using namespace std;

int main(){

  int i,k=0,n,sum=0,p[100],f[12];

  p[1]=0;p[2]=1;p[3]=1;

  while(cin>>n){

    if(n==0) break;

    if(n<=3) f[k]=p[n];

    else{

      while(n>3){

        int m=n/3;

        sum+=m;

        n=n-3*m+m;}

      f[k]=sum+p[n];

      sum=0;}

    k++;}

  for(i=0;i<k;i++) cout<<f[i]<<endl;

  return 0;

}


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区