Special Trains

Problem Statement

A railroad running from west to east in Atcoder Kingdom is now complete.

There are NN stations on the railroad, numbered 11 through NN from west to east.

Tomorrow, the opening ceremony of the railroad will take place.

On this railroad, for each integer ii such that 1≤i≤N−11≤i≤N−1 , there will be trains that run from Station ii to Station i+1i+1 in CiCi seconds. No other trains will be operated.

The first train from Station ii to Station i+1i+1 will depart Station ii SiSi seconds after the ceremony begins. Thereafter, there will be a train that departs Station ii every FiFi seconds.

Here, it is guaranteed that FiFi divides SiSi .

That is, for each Time tt satisfying Si≤tSi≤t and t%Fi=0t%Fi=0 , there will be a train that departs Station ii tt seconds after the ceremony begins and arrives at Station i+1i+1 t+Cit+Ci seconds after the ceremony begins, where A%BA%B denotes AA modulo BB , and there will be no other trains.

For each ii , find the earliest possible time we can reach Station NN if we are at Station ii when the ceremony begins, ignoring the time needed to change trains.

Constraints

  • 1≤N≤5001≤N≤500
  • 1≤Ci≤1001≤Ci≤100
  • 1≤Si≤1051≤Si≤105
  • 1≤Fi≤101≤Fi≤10
  • Si%Fi=0Si%Fi=0
  • All input values are integers.

Input

Input is given from Standard Input in the following format:

NN


C1C1 S1S1 F1F1
::
CN−1CN−1 SN−1SN−1 FN−1FN−1

Output

Print NN lines. Assuming that we are at Station ii (1≤i≤N)(1≤i≤N) when the ceremony begins, if the earliest possible time we can reach Station NN is xx seconds after the ceremony begins, the ii -th line should contain xx .


Sample Input 1 Copy

Copy
3
6 5 1
1 10 1

Sample Output 1 Copy

Copy
12
11
0

We will travel from Station 11 as follows:

  • 55 seconds after the beginning: take the train to Station 22 .
  • 1111 seconds: arrive at Station 22 .
  • 1111 seconds: take the train to Station 33 .
  • 1212 seconds: arrive at Station 33 .

We will travel from Station 22 as follows:

  • 1010 seconds: take the train to Station 33 .
  • 1111 seconds: arrive at Station 33 .

Note that we should print 00 for Station 33 .


Sample Input 2 Copy

Copy
4
12 24 6
52 16 4
99 2 2

Sample Output 2 Copy

Copy
187
167
101
0

Sample Input 3 Copy

Copy
4
12 13 1
44 17 17
66 4096 64

Sample Output 3 Copy

Copy
4162
4162
4162
0

https://img.atcoder.jp/abc084/editorial.pdf

Fisrt,considering when it is possible to ride a train which goes to station j+1 ,in the situation that arriving station j ,t seconds after the ceremony begin.

・If t < Sj , Sj seconds after the ceremony begin.

・If t ≧ Sj ,but t % Fj = 0 , t seconds after the ceremony begin.

・Othersise, t + Fj −(t % Fj) seconds after the ceremony begin. Considering this,simulate in every case,it would be O(N2) and you can get 300 points.、

 #include <cstdio >
int N,C[],S[],F[];
int main()
{
scanf("%d",&N);
for(int i=; i<N-; i++)
scanf("%d%d%d",&C[i],&S[i],&F[i]);
for(int i=; i<N; i++)
{
int t=;
for(int j=i; j<N-; j++)
{
i
f(t<S[j])t=S[j];
else if(t%F[j]==);
else t=t+F[j]-t%F[j];
t+=C[j];
}
printf("%d\n",t);
}
}

AtCoder Beginner Contest 084 C - Special Trains的更多相关文章

  1. AtCoder Beginner Contest 084(AB)

    A - New Year 题目链接:https://abc084.contest.atcoder.jp/tasks/abc084_a Time limit : 2sec / Memory limit  ...

  2. AtCoder Beginner Contest 084 D - 2017-like Number【数论/素数/前缀和】

    D - 2017-like Number Time limit : 2sec / Memory limit : 256MB Score : 400 points Problem Statement W ...

  3. AtCoder Beginner Contest 100 2018/06/16

    A - Happy Birthday! Time limit : 2sec / Memory limit : 1000MB Score: 100 points Problem Statement E8 ...

  4. AtCoder Beginner Contest 052

    没看到Beginner,然后就做啊做,发现A,B太简单了...然后想想做完算了..没想到C卡了一下,然后还是做出来了.D的话瞎想了一下,然后感觉也没问题.假装all kill.2333 AtCoder ...

  5. AtCoder Beginner Contest 053 ABCD题

    A - ABC/ARC Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Smeke has ...

  6. AtCoder Beginner Contest 136

    AtCoder Beginner Contest 136 题目链接 A - +-x 直接取\(max\)即可. Code #include <bits/stdc++.h> using na ...

  7. AtCoder Beginner Contest 137 F

    AtCoder Beginner Contest 137 F 数论鬼题(虽然不算特别数论) 希望你在浏览这篇题解前已经知道了费马小定理 利用用费马小定理构造函数\(g(x)=(x-i)^{P-1}\) ...

  8. AtCoder Beginner Contest 076

    A - Rating Goal Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Takaha ...

  9. AtCoder Beginner Contest 079 D - Wall【Warshall Floyd algorithm】

    AtCoder Beginner Contest 079 D - Wall Warshall Floyd 最短路....先枚举 k #include<iostream> #include& ...

随机推荐

  1. sqlserver数据往别的数据库迁移

    背景:sqlserver数据库数据是服务于一个.net项目.后来由于去.net 要将数据前往高斯数据库 或者Oracle. 问题是 当sql Name Age Gender from student ...

  2. 浓缩版 《C和指针》基础篇(Chpt.1~Chpt.9)

    导语 近日,笔者在课业之余阅读了<C和指针(Pointers on C)> (by Kenneth A.Reek)一书,从中记录了关于C语言的诸多知识点,包括在C语言基础特性的学习过程中没 ...

  3. Luogu P2678 跳石头(二分)

    P2678 跳石头 题意 题目背景 一年一度的"跳石头"比赛又要开始了! 题目描述 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石.组委会已经选择好了两块岩石作为比赛起 ...

  4. 关于Git回退再前进造成本地代码和远程仓库代码不一致的问题

    事情经过:  git push 提交之后(版本2.0), 回退, 然后做了一些修改, 发现有问题,于是脑抽回退git reset --hard HEAD^ (版本1,0), 然后又前进到之前那个版本( ...

  5. Java IO : NIO与IO的区别

    参考资料:https://dzone.com/articles/java-nio-vs-io NIO是面向流的,IO是面向缓冲流的. NIO是非线程阻塞的,IO是线程阻塞的. NIO的Selector ...

  6. idea中HTML格式化时标签缩进问题

    在IntelliJ Idea中HTML格式化时,默认<head><body>以及<body>下的以及标签都不会缩进. 解决方法:editor->code st ...

  7. vue项目及插件

    vue项目的创建 方法1: cmd中执行 vue ui vue会创建一个socket,方便快捷 方法2: 命令行建立 vue create v-proj //创建项目名为v-proj的项目文件 > ...

  8. Python实例 类和继承

    class Base:     def __init__(self):         self.data = []     def add(self, x):         self.data.a ...

  9. node的源码安装

    Node.js 安装配置 本章节我们将向大家介绍在 Windows 和 Linux 上安装 Node.js 的方法. 本安装教程以 Node.js v4.4.3 LTS(长期支持版本)版本为例. No ...

  10. 如何制作可以在 MaxCompute 上使用的 crcmod

    之前我们介绍过在 PyODPS DataFrame 中使用三方包.对于二进制包而言,MaxCompute 要求使用包名包含 cp27-cp27m 的 Wheel 包.但对于部分长时间未更新的包,例如 ...