零件加工 贪心 题解
1019: B06-贪心-零件加工[提高组]
时间限制: 1 Sec 内存限制: 128 MB
提交: 24 解决: 7
[提交] [状态] [讨论版] [命题人:外部导入]
题目描述
这个数可能会很大,请输出这个数对m取模后的结果。
输入
输入第一行为一个整数n,表示需要加工的零件总数。
第二行为一个整数m,表示答案要对m取模。
第3~n+2行,每行两个整数ti和si。
输出
输出仅一行,一个整数,表示小K最少要缴纳的罚金对m取模的结果。
样例输入
2 100 2 33 33 2
样例输出
4
提示
【输入输出样例解释1】
先加工第一个,需要2天时间,再加工第二个。需要缴纳的罚金为2×2=4。
【输入输出样例2】process.in
4
100
3 3
6 4
2 2
8 5
process.out
81
【输入输出样例解释2】
如果按照1→2→3→4的顺序进行加工,需要缴纳的罚金为0×3+3×4+(3+6)×2+
(3+6+2)×5=85;
最佳方案是3→1→2→4,此时需要缴纳的罚金为0×2+2×3+(2+3)×4+(2+3+6)×5=81。
【数据范围】
对于40%的数据,0<n≤10,000,0<ti,si≤10,000;
对于80%的数据,0<n≤100,000,0<ti,si≤2×109,0<m≤108;
对于100%的数据,0<n≤100,000,0<ti,si≤2×109,0<m≤1018。
来源/分类
这一道题看上去好难的样子鸭 加油哦
上面是老师发的一段讲解()(《若有》《所思》)
那么既然正解都出来了 卡一卡试试吧
#include<bits/stdc++.h> #define ll long long using namespace std; struct Node{ll t,s; }arr[100005]; int cmp(Node a,Node b){if(a.t*b.s<b.t*a.s)return 1;return 0; } ll cheng(ll a,ll b,ll m){ll ans=0,t=a;while(b!=0){if(b&1) ans=(ans+t)%m;t=(t+t)%m;b>>=1;}return ans; } int main(){ll n,m;cin>>n>>m;for(ll i=1;i<=n;i++)scanf("%lld%lld",&arr[i].t,&arr[i].s);sort(arr+1,arr+n+1,cmp);ll sum=0,ans=0;for(int i=1;i<=n;i++){ans=(ans+cheng(arr[i].s,sum,m))%m;sum+=arr[i].t;}cout<<ans;return 0; }
转载于:https://www.cnblogs.com/Tidoblogs/p/11260264.html
零件加工 贪心 题解相关推荐
- C++——NOIP模拟题——零件加工
零件加工 题目描述 工匠小 K 最近有 n 个零件需要加工.每个零件都需要 ti 天的时间来完成,每个零件每延迟一天加工都要缴纳一定的罚金 si .延迟的天数为从今天算起到该工作开始的那天,第一个零件 ...
- 如何解决编程的误差问题_柏威机械丨高精密零件加工是如何解决误差精度问题的?...
机械的快速发展,对于设备零件的精度就有了更高的要求,而高精度的零件加工需求,就需要广东零件加工企业(柏威机械)对加工工艺进行改进. 机械加工工艺是根据图纸对零件进行加工的过程,加工工艺不止一种,对于一 ...
- HALCON示例程序measure_metal_part_id.hdev使用xld边缘拟合检测零件加工是否合格
HALCON示例程序measure_metal_part_id.hdev使用xld边缘拟合检测零件加工是否合格 示例程序源码(加注释) 关于显示类函数解释 dev_update_off () Imag ...
- AOJ 15951 零件加工问题二
题目传送门 Description 有个国有中型企业,接到一批需要加工零件的订单,员工们非常高兴,工厂领导为了鼓 励员工尽快地完成加工任务,出台了奖励政策:"如果在保证质量要求的前提下,每完 ...
- 车床零件加工调度问题
目录 题目 思路 代码 运行结果 题目 某车间需要用一台车床和一台×××加工A,B,C,D4个零件.每个零件都需要先用车床加工,再用×××加工.车床和×××加工每个零件所需的工时(包括加工前的准备时间 ...
- 拨叉零件加工工艺及钻18孔夹具设计(说明书+CAD图纸+solidworks三维图+工序卡+过程卡)
摘 要 本次设计内容涉及了机械制造工艺及机床夹具设计.金属切削机床.公差配合与测量等多方面的知识. 弯臂加工工艺规程及钻孔的夹具设计是包括零件加工的工艺设计.工序设计以及专用夹具的设计三部分.在工艺 ...
- K626-弯臂拨叉零件加工工艺及钻Φ18孔夹具设计(说明书+CAD图纸+SW三维图+工序卡+过程卡)
摘 要 本次设计内容涉及了机械制造工艺及机床夹具设计.金属切削机床.公差配合与测量等多方面的知识. 弯臂加工工艺规程及钻孔的夹具设计是包括零件加工的工艺设计.工序设计以及专用夹具的设计三部分.在工艺 ...
- K626-弯臂拨叉零件加工工艺及钻18孔夹具设计(说明书+CAD图纸+solidworks三维图+工序卡+过程卡)
摘 要 本次设计内容涉及了机械制造工艺及机床夹具设计.金属切削机床.公差配合与测量等多方面的知识. 弯臂加工工艺规程及钻孔的夹具设计是包括零件加工的工艺设计.工序设计以及专用夹具的设计三部分.在工艺 ...
- solidworks钣金插件_高效掌握SolidWorks钣金零件加工设计概念
钣金零件是以金属板为原料,通过折.弯.冲.压等工艺实现的一类零件,其最大的特点是零件的壁厚均匀. 一.钣金零件的特点 钣金零件一般可分为三类: (1)平板类:指一般的平面冲裁件 (2)弯曲类:由弯曲或 ...
最新文章
- Lync 小技巧-34-通过Lync Server 2013的URI批量启用UM
- 《重构,改善既有代码的设计》读书笔记
- mqtt连接失败_Netty实战:如何让单机下Netty支持百万长连接?
- yii mysql_Yii2框架操作数据库的方法分析【以mysql为例】
- Linux服务器中木马(肉鸡)手工清除方法
- (转)基于MVC4+EasyUI的Web开发框架经验总结(1)-利用jQuery Tags Input 插件显示选择记录...
- springMvc + websocket 实现点对点 聊天通信功能
- Kubernetes CKA认证运维工程师笔记-Kubernetes存储
- php拼接二维码,文字和二维码进行合并
- 微信浏览器 视频小窗 播放 微信网页
- 【Go语言】动态库和静态库详解
- Linux下 df 命令查看磁盘空间
- 学习之学习--混沌大学商学院--第一课--HHR计划
- gitter 卸载_最佳Gitter频道:转到
- va_list 、va_start、 va_arg、 va_end 使用说明
- 苹果Mac安装win10双系统
- 算是我看源码时的一个小技巧吧~
- python--异常捕获
- python计算平均绩点_【python】以五分制绩点为基础的绩点计算器,可计算学分加权平均...
- 3 步完全掌握 LoRaWAN Server,让你拥有自己的物联网
热门文章
- ByVal和ByRef的区别
- 交互媒体专题设计------《The Wiley Handbook of Human Computer Interaction》之观后感
- 蒲公英 · JELLY技术周刊 Vol.29: 前端智能化在阿里的那些事
- 【Shotcut】开源免费视频编辑软件 - 微信视频编辑利器
- facenet 搭建人脸识别库
- 我的世界服务器怎么弄无限矿物,minecraft mod教程:在世界上生成矿石:GameRegistry的使用5...
- python成功爬取拉勾网——初识反爬(一个小白真实的爬取路程,内容有点小多)
- 问题 F: 猜球球 XUPT2019 哈夫曼树
- CPP全面总结(涵盖C++11标准)
- 厦门大学研究生计算机复试分数线,关于2018厦门大学研究生考试复试分数线的一些公告...