• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > C#算法设计之关于1000瓶水的问题

C#算法设计之关于1000瓶水的问题

作者:ben wu 字体:[增加 减小] 来源:互联网 时间:2017-05-28

ben wu 通过本文主要向大家介绍了c#算法,c#算法大全,c#算法面试题,c#排序算法,c#加密解密算法等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文实例讲述了C#算法设计之关于1000瓶水的问题。分享给大家供大家参考。具体如下:

题目如下:假设有N瓶水(当然N>0吧)
每喝一瓶后可以得到的一个空瓶子
而 每3个空瓶子又能换1瓶水,喝掉以后又得到一个空瓶子,

问总共能喝多少瓶水,最后还剩余多少个空瓶子?

代码如下:

private int Water(int n, int emptyQty)
{
 Console.WriteLine("喝了" + n + "瓶水,多" + emptyQty + "个空瓶子.");

 if (n + emptyQty < 3) //如果喝完水+空瓶还没有3的话,那就喝完了
 {
 Console.WriteLine("多" + (n + emptyQty) + "个空瓶子.");
 return n;
 }

 int a = (n + emptyQty) / 3; //喝了可换a瓶水
 int b = (n + emptyQty) % 3; //余几个空瓶

 return n + Water(a, b);
}
</div>

假设起初是1000瓶的话,调用方法

int sum = Water(1000,0);
Console.WriteLine("喝了" + sum + "瓶水");
</div>

希望本文所述对大家的C#程序设计有所帮助。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • C#递归算法之打靶算法分析
  • C#算法函数:获取一个字符串中的最大长度的数字
  • C#递归算法寻找数组中第K大的数
  • C#算法设计之关于1000瓶水的问题
  • C#排序算法的比较分析
  • C#算法之全排列递归算法实例讲解
  • C#实现的优酷真实视频地址解析功能(2014新算法)
  • C#常见算法面试题小结

相关文章

  • 2017-05-28c#唯一值渲染实例代码
  • 2017-05-28C#中使用反射遍历一个对象属性及值的小技巧
  • 2017-05-28C# 站点IP访问频率限制 针对单个站点的实现方法
  • 2017-05-28C#结构体特性实例分析
  • 2017-05-28C# WinForm打开PDF文件并在窗体中显示
  • 2017-05-28C#实现TIF图像转PDF文件的方法
  • 2017-05-28C#使用semaphore来管理异步下载请求的方法
  • 2017-05-28C#中使用IrisSkin2.dll美化WinForm程序界面的方法
  • 2017-05-28c#检测文本文件编码的方法
  • 2017-05-28C#、ASP.NET通用扩展工具类之TypeParse

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • C#集合遍历时删除和增加元素的方法
    • C#使用Matrix执行缩放的方法
    • 使用C#获取远程图片 Form用户名与密码Authorization认证的实现
    • C#(4.0)不常见的语法
    • Windows 8 Metro用C#连接SQLite及创建数据库,数据表的增删改查的实现
    • C#实现软件监控外部程序运行状态的方法
    • C#中调用VB中Inputbox类的实现方法
    • 使用设计模式中的工厂方法模式进行C#编程的示例讲解
    • C#之CLR内存原理初探
    • C#实现任务栏通知窗口

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有