【杭电】[1896]Stones
来源:互联网 发布:正规网络博客平台 编辑:程序博客网 时间:2024/06/05 20:29
像这种题都是理解题目难
真理清思路之后写的时候可能很简单就AC了……
这个利用优先队列做比较方便
题目大意是
遇见第奇数次石子就向前扔di米
遇见第偶数次石子就忽略
这样一直进行直到遇不见石子
问最远的石子距离出发点有多远
(总是从1出发)
这里是一个不断把石子加入队列的过程
直到队列为空(前方没有石子)
运用优先队列可以方便的按照
优先Pi再看Di的方式来取石子
#include<stdio.h>#include<queue>using namespace std;struct node { int p,d; bool friend operator<(node A,node B) { if(A.p==B.p) return A.d>B.d; else return A.p>B.p; }} a;int main() { int T; scanf("%d",&T); while(T--) { priority_queue<node>q; int n; scanf("%d",&n); while(n--) { scanf("%d %d",&a.p,&a.d); q.push(a); } int time=0,flag=0; while(!q.empty()) { time++; if(time&1) { a=q.top(); a.p+=a.d; if(a.p>flag) flag=a.p; q.push(a); q.pop(); } else { a=q.top(); if(a.p>flag) flag=a.p; q.pop(); } } printf("%d\n",flag); } return 0;}
题目地址:【杭电】[1896]Stones
0 0
- 杭电1896 Stones
- 【杭电】[1896]Stones
- 【HDU 杭电 1896 】Stones
- hdu 杭电1896 Stones【优先队列】
- 杭电1896 Stones(优先队列)
- 杭电-1896 Stones(优先队列)
- 杭电 1896 Stones 队列 附题目翻译
- 【杭电oj】1896 - Stones(优先队列)
- 杭电1896(题意详解+代码)(优先队列)之Stones
- HDU 1896 Stones
- HDU 1896 Stones
- hdu 1896 Stones
- HDU 1896 Stones
- HDU 1896 Stones
- hdu 1896 Stones
- hdu 1896 stones 队列
- hdu 1896 stones
- HDU 1896 Stones
- MongoDB 副本集+分片 架构部署
- git fork同步是什么意思?
- 布局和定位
- uva437 - The Tower of Babylon
- 文章标题
- 【杭电】[1896]Stones
- Java 8+Android M新特性总结(简略版)
- 12步轻松搞定python装饰器
- JAVA面向对象之接口
- Ubuntu14.04设置静态IP
- 为什么用jmpi来改变CS的值?
- JMS服务器ActiveMQ的初体验并持久化消息到MySQL数据库中
- Android Butter Knife 框架——最好用的View注入
- 设计模式之CS和BS结构的区别