【HDU】6047

来源:互联网 发布:网红张大奕的淘宝店 编辑:程序博客网 时间:2024/05/17 04:18

题目链接:点击打开题目


2017多校联合


跟队友商量了一下,感觉前面的数越大,结果就越优,那么我们就把b排一下序,然后跑一遍就行啦。


代码如下:

#include<cstdio>#include<vector>#include<algorithm>using namespace std;#define INF 0x3f3f3f3fint a[250000+5];int maxx[250000+5];vector<int> b;const int MOD = 1e9 + 7;int main(){    int n;    int ans;    while (~scanf ("%d",&n))    {        ans = 0;        for (int i = 1 ; i <= n ; i++)            scanf ("%d",&a[i]);        b.clear();        b.resize(n);        for (int i = 0 ; i < n ; i++)            scanf ("%d",&b[i]);        maxx[n] = a[n]-n;        for (int i = n-1 ; i >= 1 ; i--)            maxx[i] = max(maxx[i+1],a[i]-i);        sort(b.begin(),b.end());        int t = -INF;       //后面数的最大值         for (int i = 0 ; i < n ; i++)        {            int num = max(maxx[b[i]],t);            t = max(t,num-(n+i+1));            ans = (ans + num) % MOD;        }        printf ("%d\n",ans);    }    return 0;}
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 dnf打团网络卡怎么办 dnf打团网络冲突怎么办 苹果6s听筒声音小怎么办 手机传话器坏了怎么办 微信不能发语音怎么办 台式电脑声卡坏了怎么办 微信说话声音小怎么办 微信不能语音了怎么办 微信不能发语音怎么办? 苹果6话筒声音小怎么办 微信视频杂音大怎么办 微信语音有杂音怎么办 苹果手机音频坏了怎么办 苹果手机送话器坏了怎么办 苹果7听筒声音大怎么办 苹果6听筒声音小怎么办 苹果7电话声音小怎么办 苹果7plus声音小怎么办 苹果7通话音量小怎么办 苹果4s声音小怎么办 苹果4s没有声音怎么办 手机送话筒坏了怎么办 安卓手机声音小怎么办 微信说话没声音怎么办 小米6话筒声音小怎么办 小米4通话声音小怎么办 电容麦有电流声怎么办 苹果6说话声音小怎么办 耳机漏音怎么办小招 win8耳机孔坏了怎么办 魔音耳机开胶了怎么办 苹果6plus声音小怎么办 苹果6铃声不响怎么办 苹果6静音键失灵怎么办 苹果7手机音量小怎么办 苹果4s声音太小怎么办 苹果6声音变小了怎么办 6s扬声器声音小怎么办 苹果手机6听筒声音小怎么办 苹果7听筒声音小怎么办 苹果6音量小了怎么办