P1704 寻找最优美做题曲线

    • 118通过
    • 639提交
  • 题目提供者 nodgd
  • 评测方式 云端评测
  • 标签 二分答案 动态规划,动规,dp 洛谷原创
  • 难度 提高+/省选-
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 体验新版界面

    最新讨论 显示

    推荐的相关题目 显示

    题目背景

    nodgd是一个喜欢写程序的同学,前不久(好像还是有点久了)洛谷OJ横空出世,nodgd同学当然第一时间来到洛谷OJ刷题。于是发生了一系列有趣的事情,他就打算用这些事情来出题恶心大家……

    题目描述

    洛谷OJ刷题有个有趣的评测功能,就是系统自动绘制出用户的“做题曲线”。所谓做题曲线就是一条曲线,或者说是折线,是这样定义的:假设某用户在第b[i]天AC了c[i]道题,并且b[i]严格递增,那么该用户的做题曲线就是平面上点(i,c[i])依次连出的一条折线。比如你在第1天做了3道题,第3天做了4道题,第6天做了1道题,那么你在前6天的做题曲线就是从点(1,3)到点(2,4)到点(3,1)的连续折线。

    nodgd同学可以预测出自己未来N天每条能够AC题目的数量,同时有一个很无趣的爱好,就是单调递增,nodgd强迫自己的做题曲线保持严格的单调递增。但是出于某些原因,nodgd在某些日子(共有K天)必须刷题,而且刷题数量一定是预计的数量(体现nodgd的神预测)。nodgd同学想知道,在这样的情况下,自己最多有多少天可以刷题,不过nodgd同学还有大量的数学竞赛题、物理竞赛题、英语竞赛题、美术竞赛题、体育竞赛题……要做,就拜托你来帮他算算了。

    输入输出格式

    输入格式:

    第一行两个正整数,N和K,表示nodgd预测了未来N天每天做题的数量,其中K天必须刷题。

    第二行K个正整数p[i],表示第p[i]天必须刷题(1<=p[i]<=N,保证每个p[i]不同)。

    第三行N个正整数c[i],表示在第i天nodgd可以AC的题目数量必须是c[i]。

    输出格式:

    一行。

    如果能找到严格递增的做题曲线:一个正整数,表示nodgd最多有多少天可以刷题。

    如果找不到严格递增的做题曲线:直接输出“impossible”(不加引号,全是小写字母)。

    输入输出样例

    输入样例#1: 复制
    13 4
    2 13 8 7
    6 10 9 8 9 10 11 16 14 12 13 14 18 
    输出样例#1: 复制
    5

    说明

    数据范围

    1<=N<=500000,1<=K<=N/2

    1<=p[i]<=N,保证每个p[i]不同,不保证p[i]按大小顺序输入

    1<=c[i]<=10^9

    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。