鱼C论坛

 找回密码
 立即注册
查看: 3614|回复: 10

[已解决]一道有趣的计算题

[复制链接]
发表于 2018-2-11 14:20:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
QQ图片20180211141926.jpg


不管用什么语言算出来就好, 大家有没有空 算一下
最佳答案
2018-2-11 20:32:36
#酒瓶喝酒问题
L = [5, 5, 5, 3]
while L[3] != 0:
        L[0] += L[3]
        L[1] = L[1] % 2 + L[3]
        L[2] = L[2] % 4 + L[3]
        L[3] = L[1] // 2 + L[2] // 4
print('一共喝了%d瓶,还剩%d个瓶盖和%d个空瓶'%(L[0],L[1],L[2])) 


一共喝了15瓶,还剩1个瓶盖和3个空瓶
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-2-11 14:33:34 | 显示全部楼层
Python
def jipingjiu(money):  
    beer = money / 2  # 不考虑找零  money%2  
    btt, cap = money/2, money/2   #买过酒得到的酒瓶及瓶盖  
    flag = 1  
    brr = 0  #如果可以赊酒的话  
    while flag:  
        a = btt/2   #酒瓶换酒  
        b = cap/4   #瓶盖换酒  
        tmp = a + b - brr  
        if tmp > 0 or brr == 2:  
            beer += a + b  
            btt = a + b - brr + btt%2   
            cap = a + b - brr + cap%4    
            brr = 0  
            flag = btt + cap  
        #   flag = btt/2 + cap/4   #如果不能赊酒的话  
        else:  
            btt += 1 #赊一瓶酒  
            cap += 1  
            brr += 1    
        print "喝了{}瓶酒,赊了{}瓶酒,剩余{}酒瓶及{}瓶盖".format(beer, brr, btt,cap)  
          
jipingjiu(10)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-2-11 14:41:51 | 显示全部楼层


  btt, cap = money/2, money/2   #买过酒得到的酒瓶及瓶盖     这一句不懂, 大佬
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-11 14:46:39 | 显示全部楼层
Ъγ:_小ツ雨oο 发表于 2018-2-11 14:41
btt, cap = money/2, money/2   #买过酒得到的酒瓶及瓶盖     这一句不懂, 大佬

??除以二
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-11 14:47:25 | 显示全部楼层
Ъγ:_小ツ雨oο 发表于 2018-2-11 14:41
btt, cap = money/2, money/2   #买过酒得到的酒瓶及瓶盖     这一句不懂, 大佬

找钱吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-11 15:27:52 | 显示全部楼层
本帖最后由 °蓝鲤歌蓝 于 2018-3-8 16:55 编辑
def PiJiu(battle,cup,boo):
    if cup < 2 and boo < 4:
        return battle
    else:
        battle1 = cup // 2 + boo // 4
        cup = battle1 + cup % 2
        boo = battle1 + boo % 4
        return battle + PiJiu(battle1, cup, boo)

# 10元5瓶酒,5个盖子,5个空瓶
Pi = PiJiu(5,5,5)
print(Pi) 

答案是15瓶。
前段时间卖汽水,现在过来买啤酒。放心,我什么都不会买的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2018-2-11 15:36:56 | 显示全部楼层
°蓝鲤歌蓝 发表于 2018-2-11 15:27
答案是15瓶。
前段时间卖汽水,现在过来买啤酒。放心,我什么都不会买的。

,   为啥都用py里
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-11 15:43:36 | 显示全部楼层

我学Python比较多,C和Java就会一点点,
思路是有,但是用另外两种语言写不出来。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-11 17:20:39 | 显示全部楼层
c语言应该 好些一点吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-11 17:54:13 | 显示全部楼层
import tkinter as tk

def hePijiu(qian):
    pijiushu = qian // 2
    pinyu = 0
    gaiyu = 0
    zpijiushu = pijiushu
    while pijiushu>=1 :
        pijiushu_qian = pijiushu
        pingyu_qian = pinyu
        gaiyu_qian = gaiyu
        pijiushu= (pijiushu_qian+pingyu_qian)//2 + (pijiushu_qian+gaiyu_qian)//4
        pinyu = (pijiushu_qian+pingyu_qian) % 2
        gaiyu = (pijiushu_qian+gaiyu_qian) % 4
        zpijiushu=zpijiushu + pijiushu
    return zpijiushu

master = tk.Tk()
tk.Label(master, text="钱数:").grid(row=0)
e1 = tk.Entry(master)
e1.delete(0,tk.END)
e1.insert(0,'10')
e1.grid(row=0, column=1, padx=10, pady=5)
v = tk.StringVar()
label = tk.Label(master, textvariable=v)
label.grid(row=3, column=1, padx=10, pady=5)

def show():
    qian = e1.get()
    try:
        q = int(qian)
        v.set("总共能喝%s瓶" % hePijiu(q))
        e1.delete(0, tk.END)
    except:
        v.set("请输入一个数字!")
        e1.delete(0, tk.END)
tk.Button(master, text="计算", width=10, command=show)\
    .grid(row=3, column=0, sticky=tk.W, padx=10, pady=5)
tk.mainloop()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-11 20:32:36 | 显示全部楼层    本楼为最佳答案   
#酒瓶喝酒问题
L = [5, 5, 5, 3]
while L[3] != 0:
        L[0] += L[3]
        L[1] = L[1] % 2 + L[3]
        L[2] = L[2] % 4 + L[3]
        L[3] = L[1] // 2 + L[2] // 4
print('一共喝了%d瓶,还剩%d个瓶盖和%d个空瓶'%(L[0],L[1],L[2])) 


一共喝了15瓶,还剩1个瓶盖和3个空瓶
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-24 20:41

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表