A. Borya's Diagnosis

传送门:http://codeforces.com/contest/879/problem/A

本题是一个模拟问题。

依次访问n个元素,第i个元素首次出现于si时刻,之后相邻两次出现的时间间隔为di。求访问结束的时刻。

贪心地模拟之。

注意事项:当运算符“/”用于负操作数时,在C89中,其结果由实现定义;在C99中,除法的结果总是向零截取的!!

注意特判si>cur的情形,以避免“由实现定义”的负操作数除法“/”。

参考程序如下:

#include <stdio.h>
#include <stdint.h>
#define MAX_N 1000 int s[MAX_N], d[MAX_N]; int main(void)
{
int n;
scanf("%d", &n);
for (int i = ; i < n; i++)
scanf("%d%d", &s[i], &d[i]);
int cur = ;
for (int i = ; i < n; i++) {
if (s[i] > cur) cur = s[i];
else {
int j = (cur - s[i]) / d[i];
cur = s[i] + d[i] * (j + );
}
}
printf("%d\n", cur);
return ;
}

B. Table Tennis

传送门:http://codeforces.com/contest/879/problem/B

本题是一个模拟问题。

n个人排成队列进行比赛,比赛规则如下:

①队首的两个人比赛,胜出者留在队首,另一个人去队尾;

②当一个人总共胜出k次时,比赛结束,这个人成为最终的赢家;

③两个人比赛时,能量值较大的人胜出。

对于最初的队列,第i个人的能量值为ai。已知a[1..n]是1..n的一个排列。

求最终赢家的能量值。

贪心地模拟之。

k≥n,则所求结果是全局最优解,即最大的能量值max{ai|1≤i≤n}。

k<n,则直接用队列模拟即可,注意设置计数器cnt,表示队首胜利的次数。

参考程序如下:

#include <bits/stdc++.h>
using namespace std; queue<int> q; int main(void)
{
int n;
int64_t k;
scanf("%d%I64d", &n, &k);
for (int i = ; i < n; i++) {
int a;
scanf("%d", &a);
q.push(a);
}
if (k >= n) {
int ans = ;
while (!q.empty()) {
if (q.front() > ans)
ans = q.front();
q.pop();
}
printf("%d\n", ans);
return ;
}
int cur = q.front();
q.pop();
int cnt = ;
while (cnt < k) {
int fnt = q.front();
if (cur > fnt) {
cnt++;
q.pop();
q.push(fnt);
} else {
cnt = ;
q.pop();
q.push(cur);
cur = fnt;
}
}
printf("%d\n", cur);
return ;
}

Codeforces 879A/B的更多相关文章

  1. python爬虫学习(5) —— 扒一下codeforces题面

    上一次我们拿学校的URP做了个小小的demo.... 其实我们还可以把每个学生的证件照爬下来做成一个证件照校花校草评比 另外也可以写一个物理实验自动选课... 但是出于多种原因,,还是绕开这些敏感话题 ...

  2. 【Codeforces 738D】Sea Battle(贪心)

    http://codeforces.com/contest/738/problem/D Galya is playing one-dimensional Sea Battle on a 1 × n g ...

  3. 【Codeforces 738C】Road to Cinema

    http://codeforces.com/contest/738/problem/C Vasya is currently at a car rental service, and he wants ...

  4. 【Codeforces 738A】Interview with Oleg

    http://codeforces.com/contest/738/problem/A Polycarp has interviewed Oleg and has written the interv ...

  5. CodeForces - 662A Gambling Nim

    http://codeforces.com/problemset/problem/662/A 题目大意: 给定n(n <= 500000)张卡片,每张卡片的两个面都写有数字,每个面都有0.5的概 ...

  6. CodeForces - 274B Zero Tree

    http://codeforces.com/problemset/problem/274/B 题目大意: 给定你一颗树,每个点上有权值. 现在你每次取出这颗树的一颗子树(即点集和边集均是原图的子集的连 ...

  7. CodeForces - 261B Maxim and Restaurant

    http://codeforces.com/problemset/problem/261/B 题目大意:给定n个数a1-an(n<=50,ai<=50),随机打乱后,记Si=a1+a2+a ...

  8. CodeForces - 696B Puzzles

    http://codeforces.com/problemset/problem/696/B 题目大意: 这是一颗有n个点的树,你从根开始游走,每当你第一次到达一个点时,把这个点的权记为(你已经到过不 ...

  9. CodeForces - 148D Bag of mice

    http://codeforces.com/problemset/problem/148/D 题目大意: 原来袋子里有w只白鼠和b只黑鼠 龙和王妃轮流从袋子里抓老鼠.谁先抓到白色老鼠谁就赢. 王妃每次 ...

随机推荐

  1. luogu1273 有限电视网

    题目大意 有一棵有根树,每个结点有一个收益,每条边有一个花费.如果要选择一个叶子结点,则根节点到该叶子结点的路径上的所有结点都必须被选择.求当总收益大于等于总花费的情况下,最多能选择多少个叶子结点. ...

  2. Mongo 中间件 pre find 修改query

    需求:在所有find查询的时候,默认添加查询参数 name:bennman //创建一个query中间件 myMid.js module.exports = function(schema){ //这 ...

  3. C++_class_powerpoint_1.2

    用英文编写(复制黏贴)果然比较吃力啊,果然还是要写中文. Expressions and Statements Operator summary Scope resolution   class::m ...

  4. bzoj1699

    st表 我还不会st表 f[i][j]表示[i,i+2^j)区间的最值 构造就像lca一样f[i][j]=f[i][j-1] f[i][j]=max(f[i][j-1],f[i+(1<<( ...

  5. Python 35 线程(2)线程特性、守护线程、线程互斥锁

    一:线程特性介绍 from threading import Thread import time n=100 def task(): global n n=0 if __name__ == '__m ...

  6. PowerDesigner常用技巧

    PowerDesigner是非常强大的数据库设计软件,熟练使用PowerDesigner可以使数据库设计高效而简洁.PowerDesign具体操作在帮助文档(按F1)里面有详细描述,这儿只是列出了常用 ...

  7. Android PopWindow的替代品BasePopup

    版权声明:本文为xing_star原创文章,转载请注明出处! 本文同步自http://javaexception.com/archives/109 背景描述 最近一段时间,又看到了这个开源项目Base ...

  8. thymeleaf公共页面元素抽取

    1.抽取公共片段 使用thymeleaf的th:fragment为样抽取的公共片段命名, 如下把div标签命名为 copy,就可以获取到div整个里的内容<div th:fragment=&qu ...

  9. 【poj1995】快速幂

    题目大意 求a^b %p 1≤a,b,p≤10^9 思路 时间O(10^9)一定会爆T,采用数学方法+位运算,得到O(log b)的快速幂算法 代码 #include<cstdio> #i ...

  10. Python简介和基础入门

    1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是一种开发语言,而且已经 ...