• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-60  評論-98  文章-0  trackbacks-0
            貪心算法,可以求得近似最優(yōu)解。
            posted on 2006-09-25 16:03 創(chuàng)建更好的解決方案 閱讀(554) 評論(1)  編輯 收藏 引用

            評論:
            # re: GOOGLE筆試題之找零錢 2007-10-12 16:20 | 創(chuàng)建更好的解決方案
            http://blog.csdn.net/paradise80/archive/2004/12/05/205519.aspx
            田東專欄修改后的C#代碼

            using System;
            using System.Collections.Generic;
            using System.Linq;
            using System.Text;

            namespace Implememtations
            {
            /// <summary>
            /// Calculates the minimum count of change.
            /// </summary>
            public class MoneyChanger
            {
            /// <summary>
            /// Initializes an instance of <c>MoneyChange</c> with par values.
            /// </summary>
            /// <param name="parValues">Par values(e.g 10, 5, 2, 1 for RMB).</param>
            public MoneyChanger(int[] parValues)
            {
            if (parValues == null)
            {
            throw new ArgumentNullException("parValues");
            }

            this.parValues = this.FilterParValues(parValues);

            if (this.parValues.Count == 0)
            {
            throw new ArgumentException("Invalid par values");
            }
            }

            /// <summary>
            /// Gets change with minimum count of par values.
            /// </summary>
            /// <param name="amount">Total amount to be changed.</param>
            /// <returns>(parValue, count) pairs.</returns>
            public virtual Dictionary<int, int> Change(int amount)
            {
            Dictionary<int, int> result = new Dictionary<int, int>(this.parValues.Count);

            foreach (int par in this.parValues)
            {
            result.Add(par, amount / par);
            amount %= par;
            }

            return result;
            }

            #region Fields

            /// <summary>
            /// Stores par values.
            /// </summary>
            private List<int> parValues;

            #endregion Fields

            #region Supports Methods

            /// <summary>
            /// Filters par values with following rules:
            /// 1. All values are greater then zero.
            /// 2. All have different value.
            /// 3. Sorted in descending order.
            /// </summary>
            /// <param name="parValues">Array of par values.</param>
            /// <returns>Filtered par values.</returns>
            private List<int> FilterParValues(int[] parValues)
            {
            List<int> temp = new List<int>(parValues.Length);
            List<int> list = new List<int>(parValues.Length);

            // Filters positive integers.
            foreach (int par in parValues)
            {
            if (par > 0)
            {
            temp.Add(par);
            }
            }

            // Sorts values.
            temp.Sort();

            // Adds to list in descending order.
            for (int i = temp.Count - 1; i >= 0; i--)
            {
            if (list.Count > 0)
            {
            // Ingores the duplicate value.
            if (temp[i] == list[list.Count - 1])
            {
            continue;
            }
            }

            list.Add(temp[i]);
            }

            return list;
            }

            #endregion Supports Methods
            }
            }  回復(fù)  更多評論
              

            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            狠狠色丁香婷婷综合久久来| 久久精品a亚洲国产v高清不卡| 久久狠狠一本精品综合网| 精品无码人妻久久久久久| 久久强奷乱码老熟女网站| 中文字幕热久久久久久久| 亚洲天堂久久精品| 久久久久国产精品嫩草影院| 久久精品国产亚洲AV大全| 久久国产视屏| 69久久夜色精品国产69| 中文字幕亚洲综合久久菠萝蜜| 久久精品国产亚洲AV无码麻豆 | 思思久久99热免费精品6| 久久精品人人做人人爽97| 99久久这里只精品国产免费| 99国产精品久久久久久久成人热| 欧美一级久久久久久久大| 日本道色综合久久影院| 99久久综合国产精品二区| 久久人人爽人人爽人人爽| 观看 国产综合久久久久鬼色 欧美 亚洲 一区二区 | 亚洲欧美成人久久综合中文网 | 久久青青草原精品国产不卡 | 品成人欧美大片久久国产欧美| 囯产精品久久久久久久久蜜桃| 久久国产成人午夜aⅴ影院| 97精品国产91久久久久久| 久久久久亚洲AV成人网人人网站| 久久夜色精品国产www| 99久久精品免费国产大片| 久久99精品国产| 欧美精品一本久久男人的天堂| 人妻精品久久久久中文字幕69| 亚洲女久久久噜噜噜熟女| 热久久最新网站获取| 久久这里都是精品| 一级做a爰片久久毛片免费陪| 久久综合给合综合久久| 四虎久久影院| 久久AV高潮AV无码AV|