Hatena::Grouptopcoder

chokudaiの日記

 | 

2010-11-07

SRM 383 Div1 Easy Planks

13:06 | SRM 383 Div1 Easy Planks - chokudaiの日記 を含むブックマーク はてなブックマーク - SRM 383 Div1 Easy Planks - chokudaiの日記 SRM 383 Div1 Easy Planks - chokudaiの日記 のブックマークコメント

問題

木材を切って売る。

  • 出荷時のサイズは全て一緒じゃないとだめ
  • 切るのにお金がかかる
  • 貰える金額は(出荷数)*(長さ)*woodvalue

収益最大化しなさいっ

方針

全探査

ソースコード

    public int makeSimilar(int[] lengths, int costPerCut, int woodValue)
    {
        int result = 0;
        int i,j;
        for (i = 1; i <= 10000; i++)
        {
            int now = 0;
            for (j = 0; j < lengths.Length; j++)
            {
                int plus = 0;
                plus += lengths[j] / i * woodValue * i;
                if (lengths[j] % i == 0 && lengths[j] >= i) plus -= (lengths[j] / i - 1) * costPerCut;
                else plus -= (lengths[j] / i) * costPerCut;
                now += Math.Max(0, plus);
            }
            result = Math.Max(result, now);
        }
        return result;
    }

AnitaAnita2012/07/10 07:13Got it! Thanks a lot again for helnpig me out!

cqjqcowuqqmcqjqcowuqqm2012/07/10 16:35hkDpK5 <a href="http://xgrkysedhwcl.com/">xgrkysedhwcl</a>

maubcamaubca2012/07/12 12:47mCIKTN <a href="http://pibfomngcqgb.com/">pibfomngcqgb</a>

 |