没能发现整除的规律,所以写了个递归,被输入输出的\n小坑了一下导致第一次做题时没通过。。 import sys def cal(n,maxm): if n>=3: yu = n%3 ex = int((n-yu)/3) if yu+ex==2: yu+=1 n = yu+ex maxm += ex maxm = cal(n, maxm) return maxm if __name__=='__main__': for line in sys.stdin: if line.replace("\n","")=='0':break n = int(line) maxm = cal(n, 0) ...