• <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>

            poj3273

            Monthly Expense

            Time Limit: 2000MS Memory Limit: 65536K
            Total Submissions: 8261 Accepted: 3399

            Description

            Farmer John is an astounding accounting wizard and has realized he might run out of money to run the farm. He has already calculated and recorded the exact amount of money (1 ≤ moneyi ≤ 10,000) that he will need to spend each day over the next N (1 ≤ N ≤ 100,000) days.

            FJ wants to create a budget for a sequential set of exactly M (1 ≤ MN) fiscal periods called "fajomonths". Each of these fajomonths contains a set of 1 or more consecutive days. Every day is contained in exactly one fajomonth.

            FJ's goal is to arrange the fajomonths so as to minimize the expenses of the fajomonth with the highest spending and thus determine his monthly spending limit.

            Input

            Line 1: Two space-separated integers: N and M
            Lines 2..N+1: Line i+1 contains the number of dollars Farmer John spends on the ith day

            Output

            Line 1: The smallest possible monthly limit Farmer John can afford to live with.

            Sample Input

            7 5
            100
            400
            300
            100
            500
            101
            400

            Sample Output

            500

            Hint

            If Farmer John schedules the months so that the first two days are a month, the third and fourth are a month, and the last three are their own months, he spends at most $500 in any month. Any other method of scheduling gives a larger minimum monthly limit.


            題意很簡單,算法也很簡單,以前這種題目絕對做不出來,可能沒做過這種類型的吧
            現在看貌似很簡單,
            做法就是二分枚舉答案+貪心驗證
            二分的下界取最大的數
            上界取所有數的和即可
            唔,昨晚上剛看到這題的時候,想著dp應該是可以的
            不過測試數據是10w,又不行了,然后想著可以轉化成圖論的模型,不過點太多,還是不行
            然后搜索,dp都不行了,搜索也白搭,然后想二分,然后算了下只有10^9 ,頂多30多次 ,貌似可以
            …………

            #include<stdio.h>
            #include
            <string.h>
            #include
            <math.h>
            #define maxn 100005
            int n,m,a[maxn];
            int lower,upper;
            int max(int a,int b)
            {
                
            return a>b?a:b;
            }

            bool yanz(int x)
            {
                
            int num,i,tmp;
                num
            =0;
                i
            =1;
                
            while(i<=n)
                
            {
                    tmp
            =0;
                    
            while(tmp+a[i]<=x&&i<=n)
                    
            {
                        tmp
            =tmp+a[i];
                        i
            ++;
                    }

                    num
            ++;
                }

                
            if(num>m) return 0;
                
            return 1;
            }

            int main()
            {
                
            int i;
                
            while(scanf("%d%d",&n,&m)!=EOF)
                
            {
                    lower
            =-1;
                    upper
            =0;
                    
            for(i=1; i<=n; i++)
                    
            {
                        scanf(
            "%d",&a[i]);
                        lower
            =max(a[i],lower);
                        upper
            =upper+a[i];
                    }

                    
            //printf("%d %d\n",upper,lower);
                    int left,right;
                    left
            =lower;
                    right
            =upper;
                    
            while(left<right)
                    
            {
                        
            int mid=(left+right)/2;
                        
            if(yanz(mid)) right=mid; //printf("%d ok\n",right);}
                        else left=mid+1;
                    }

                    printf(
            "%d\n",left);
                }

                
            return 0;
            }


            wa了兩遍,發現最開始的時候tmp沒初始化

            posted on 2012-05-22 16:31 jh818012 閱讀(215) 評論(0)  編輯 收藏 引用

            <2025年7月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            導航

            統計

            常用鏈接

            留言簿

            文章檔案(85)

            搜索

            最新評論

            • 1.?re: poj1426
            • 我嚓,,輝哥,,居然搜到你的題解了
            • --season
            • 2.?re: poj3083
            • @王私江
              (8+i)&3 相當于是 取余3的意思 因為 3 的 二進制是 000011 和(8+i)
            • --游客
            • 3.?re: poj3414[未登錄]
            • @王私江
              0ms
            • --jh818012
            • 4.?re: poj3414
            • 200+行,跑了多少ms呢?我的130+行哦,你菜啦,哈哈。
            • --王私江
            • 5.?re: poj1426
            • 評論內容較長,點擊標題查看
            • --王私江
            久久国产成人精品麻豆| 亚洲国产成人精品久久久国产成人一区二区三区综 | 久久久噜噜噜久久| 亚洲中文字幕无码久久2017| 囯产精品久久久久久久久蜜桃 | 久久久无码精品午夜| 精品久久一区二区三区| A级毛片无码久久精品免费| 久久久久久一区国产精品| 少妇人妻88久久中文字幕| 精品久久国产一区二区三区香蕉| 久久AV高清无码| 日韩精品久久无码人妻中文字幕 | 亚洲综合精品香蕉久久网97| 久久亚洲高清综合| 一本一本久久a久久精品综合麻豆| 国产91色综合久久免费| 无码人妻久久久一区二区三区| 狠狠色伊人久久精品综合网| 91精品国产91久久| 亚洲国产日韩欧美久久| 一本久久免费视频| 国产精品久久久99| 热综合一本伊人久久精品| 久久无码人妻精品一区二区三区| 久久伊人五月天论坛| 亚洲国产精品无码久久久蜜芽 | 精品久久久久久国产91| 色8激情欧美成人久久综合电| 久久久一本精品99久久精品66| 久久人人爽人人爽AV片| 亚洲AV无码久久精品蜜桃| 国产精品gz久久久| 久久久久亚洲av无码专区喷水| 99热热久久这里只有精品68| 久久久久久A亚洲欧洲AV冫| 久久久久久人妻无码| 无码八A片人妻少妇久久| 国产69精品久久久久99尤物| 国产精品美女久久久m| 国产精品久久久久久五月尺|