U盘量产检查闪存编码失败_北信源安全u盘忘记密码

U盘量产检查闪存编码失败_北信源安全u盘忘记密码没什么特殊的想法就是看自己很久没有更新关于题解类的文章了而已(其实这是我好久之前做的,只是把它从洛谷博客搬到了这里而已)题目首先分析题目要二分他长成这个亚子太二分了所以就要二分最好是先排一下序吧这样我们在输入的时候就能顺便处理出l和r的值,考虑我们二分的是一个接口的大小,所以我们的答案肯定是在最大的接口和最小的接口之间啊,所以这样做是可…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

没什么特殊的想法

就是看自己很久没有更新关于题解类的文章了而已

(其实这是我好久之前做的, 只是把它从洛谷博客搬到了这里而已)

题目

首先分析题目要二分

U盘量产检查闪存编码失败_北信源安全u盘忘记密码

 

 他长成这个亚子太二分了

所以就要二分

最好是先排一下序吧

这样我们在输入的时候就能顺便处理出l和r的值, 考虑我们二分的是一个接口的大小, 所以我们的答案肯定是在最大的接口和最小的接口之间啊, 所以这样做是可行的, 而且会让我们的程序跑的更快一些。

然而并没有什么卵用。

and 关于二分边界问题, 可以用一个ans来储存答案

一篇很好的关于边界问题的文章

然后check函数跑一遍01背包就好啦

The Last:

#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
const int N = 1100;
int n, p, s, w[N], v[N], l = N, r, mid, ans = -1, f[N];
bool check(int x) {
    memset (f, 0, sizeof (f));
    for(int i = 1; i <= n; i++) 
        if (w[i] <= x)
            for(int j = s; j >= w[i]; j--)
                f[j] = max(f[j], f[j - w[i]] + v[i]);
    if (f[s] < p) return false;
    return true;
}
int main() {
    scanf("%d%d%d", &n, &p, &s);
    for(int i = 1; i <= n; i++) {
        scanf("%d%d", &w[i], &v[i]);
        if(w[i] > r) r = w[i];
        if(w[i] < l) l = w[i];
    }
    while(l < r) {
        mid = (l + r) >> 1;
        if(check(mid)) {
            ans = mid;
            r = mid;
        }
        else l = mid + 1;
    }
    if(ans != -1) 
        printf("%d\n", ans);
    else printf ("No Solution!\n");
    return 0;
}

谢谢收看, 祝身体健康!

 

转载于:https://www.cnblogs.com/yanxiujie/p/11609867.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/182792.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • python venv文件夹_pycharm的venv文件夹的自定义处理「建议收藏」

    python venv文件夹_pycharm的venv文件夹的自定义处理「建议收藏」pycharm每次新建项目都需要重新安装库,解决方法如下:新建项目时自定义选择库(自己安装python位置),不要创建新的(如下图)第一完成后,让它记忆我们这个库,新建项目都默认这个库依次打开:Flie-Settings-Project-projectinterpreter点击2号位置的设置图样,会出现如下图,再点击Add选择现有环境(python安装位置)添加第三方库默认地址是http…

  • Laravel 开发常用手册[通俗易懂]

    Laravel 开发常用手册[通俗易懂]分享8个Laravel模型时间戳使用技巧laravelapi文档Laravel项目开发规范LaravelWiki这个有时候比文档更好用//todo

  • BufferedWriter写入

    BufferedWriter写入带有缓存区的字符输出流BufferedWriter:带有缓存的字符输出流。packagecom;importjava.io.*;/***BufferedWriter:带有缓存的字符输出流。*/publicclasstest{publicstaticvoidmain(String[]args){//带有缓存区的字符输出流BufferedWriterout=null;try{

  • python 获取时间戳_datetime获取当前时间

    python 获取时间戳_datetime获取当前时间1、获取秒级、毫秒级和微秒级时间戳importtimeimportdatetimet=time.time()#当前时间print(t)#原始时间数据print(int(t))#秒级时间戳print(int(round(t*1000)))#毫秒级时间戳print(int(round(t*1000000)))#微秒级时间戳结果:1634191096.03610181634191096163419109603616341910960361

  • USB设备驱动程序开发框架[通俗易懂]

    USB设备驱动程序开发框架[通俗易懂]USB设备驱动程序开发框架USB设备驱动程序开发框架的源代码文件文件名说明Driver.h驱动程序头文件DrvInit.c入口例程和卸载例程DrvPnp.c即插即用例程DrvDispatch.c分发例程DrvPowe

  • 为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?

    为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。一、事件起因关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看…

    2022年10月20日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号