P3926 SAC E#1 - 一道不可做题 Jelly

【链接】:https://www.luogu.org/problem/show?pid=3926

题目背景

SOL君(炉石主播)和SOL菌(完美信息教室讲师)是好朋友。

题目描述

SOL君很喜欢吃蒟蒻果冻。而SOL菌也很喜欢蒟蒻果冻。

有一天,他们在一起搓炉石,而SOL菌则要拿出蒟蒻果冻招待他的客人。

蒟蒻果冻一般在a度下保存在冰箱里。但是刚拿出来的时候太冰了,需要加热。SOL菌打算用一种神奇的电炉加热蒟蒻果冻。根据观察,它有一个特点:

1、蒟蒻果冻小于c度的时候,每p单位时间加热1单位温度;

2、当蒟蒻果冻等于c度的时候,需要q单位时间解冻(大家都知道,晶体物态变化温度不变……SOL君认为果冻属于晶体);

3、当蒟蒻果冻解冻完成之后,每r单位时间加热1单位温度。

SOL想知道,将果冻加热x单位时间的时候果冻的温度。

温度向下取整,也就是说,如果加热结束时不足p(或q)单位时间,则认为在这最后一小段时间内果冻温度没有任何变化。

输入输出格式

输入格式:

输入仅包含一行,6个整数,依次为a,c,p,q,r,x。

输出格式:

输出仅包含一个整数:即为所求温度。

输入输出样例

输入样例#1:

-10 0 2 1 3 26
输出样例#1:

1
输入样例#2:

-10 0 2 1 3 27
输出样例#2:

2

说明

对于 30\%30% 的数据,|a|, |c| \leq 200, x \leq 100∣a∣,∣c∣≤200,x≤100。

对于 60\%60% 的数据,|a|, |c| \leq 2 \times 10^9, x \leq 100∣a∣,∣c∣≤2×10​9​​,x≤100。

对于 100\%100% 的数据,|a|, |c| \leq 2 \times 10^9, 1 \leq x, p, q, r \leq 10^9∣a∣,∣c∣≤2×10​9​​,1≤x,p,q,r≤10​9​​。

数据中可能有 a = ca=c,此时算还未解冻的状态。

提示:请使用long long数据类型。

【分析】:注意点是特判x》p。

如果a>c,ans=a+[x/r];

如果a==c有两种情况:

x<=q ,ans=c;

x>q, ans=c+[(x-q)/r];

如果a<c有三种情况:

x<=(c-a)p ,ans=a+[x/p];

(c-a)p<=x<=(c-a)p+q,ans=c;

x>(c-a)p+q,ans=c+[(x-(c-a)p-q)/r];

【时间复杂度】:O(1)

【代码】:

#include <cstdio>
#include <algorithm>
using namespace std;
#define LL long long
int main()
{
LL a,c,p,q,r,x;
scanf("%lld%lld%lld%lld%lld%lld",&a,&c,&p,&q,&r,&x);
int ans;
int t=;
while(a<c&&x>=p)//注意判断x》p!!!
{
x-=p;
a++;
}
//printf("time=%d c=%d\n",t,a);
if(a==c)
x-=q;
//printf("time=%d c=%d\n",t,a);
while(x>=r)
{
x-=r;
a++;
}
//printf("time=%d c=%d\n",t,a);
printf("%lld\n",a);
return ;
}
#include <iostream>

using namespace std;

#define LL long long

int main() {
LL a,c,p,q,r,x,t;
cin >> a >> c >> p >> q >> r >> x; if(a<c) {
t = min(x, p*(c-a));
x -= t;
a += t / p;
} if(a==c) {
x -= min(x, q);
} a += x / r;
cout << a << endl;
}

标程

洛谷P3926 SAC E#1 - 一道不可做题 Jelly【模拟/细节】的更多相关文章

  1. l洛谷 P3926 SAC E#1 - 一道不可做题 Jelly

    P3926 SAC E#1 - 一道不可做题 Jelly 题目背景 SOL君(炉石主播)和SOL菌(完美信息教室讲师)是好朋友. 题目描述 SOL君很喜欢吃蒟蒻果冻.而SOL菌也很喜欢蒟蒻果冻. 有一 ...

  2. 2018.09.14 洛谷P3931 SAC E#1 - 一道难题 Tree(树形dp)

    传送门 简单dp题. f[i]表示以i为根的子树被割掉的最小值. 那么有: f[i]=min(∑vf[v],dist(i,fa))" role="presentation" ...

  3. [洛谷P3931]SAC E#1 - 一道难题 Tree

    题目大意:给你一棵带权有根树,可以切断一些边,问使得根和叶子节点不连通的最小代价. 题解:做了一天的网络流,这道题显然可以用最小割来做,但是也可以用树形$DP$,基本同[SDOI2011]消耗战,这道 ...

  4. 洛谷 P3927 SAC E#1 - 一道中档题 Factorial【数论//】

    题目描述 SOL君很喜欢阶乘.而SOL菌很喜欢研究进制. 这一天,SOL君跟SOL菌炫技,随口算出了n的阶乘. SOL菌表示不服,立刻就要算这个数在k进制表示下末尾0的个数. 但是SOL菌太菜了于是请 ...

  5. 洛谷P3929 SAC E#1 - 一道神题 Sequence1【枚举】

    题目描述 小强很喜欢数列.有一天,他心血来潮,写下了一个数列. 阿米巴也很喜欢数列.但是他只喜欢其中一种:波动数列. 一个长度为n的波动数列满足对于任何i(1 <= i < n),均有: ...

  6. 洛谷 P3931 SAC E#1 - 一道难题 Tree

    题目背景 冴月麟和魏潇承是好朋友. 题目描述 冴月麟为了守护幻想乡,而制造了幻想乡的倒影,将真实的幻想乡封印了.任何人都无法进入真实的幻想乡了,但是她给前来救她的魏潇承留了一个线索. 她设置了一棵树( ...

  7. 洛谷P3928 SAC E#1 - 一道简单题 Sequence2

    提交地址 题目背景 小强和阿米巴是好朋友. 题目描述 小强喜欢数列.有一天,他心血来潮,写下了三个长度均为n的数列. 阿米巴也很喜欢数列.但是他只喜欢其中一种,波动数列. 阿米巴把他的喜好告诉了小强. ...

  8. 洛谷-P3927 SAC E#1 - 一道中档题 Factorial

    原址 题目背景 数据已修改 SOL君(炉石主播)和SOL菌(完美信息教室讲师)是好朋友. 题目描述 SOL君很喜欢阶乘.而SOL菌很喜欢研究进制. 这一天,SOL君跟SOL菌炫技,随口算出了n的阶乘. ...

  9. [洛谷3930]SAC E#1 - 一道大水题 Knight

    Description 他们经常在一起玩一个游戏,不,不是星际争霸,是国际象棋.毒奶色觉得F91是一只鸡.他在一个n×n的棋盘上用黑色的城堡(车).骑士(马).主教(象).皇后(副).国王(帅).士兵 ...

随机推荐

  1. 附录A培训实习生-面向对象基础构造方法和带参数的构造方法(2)

    构造方法,又叫构造函数,其实就是对类进行实例化.构造方法与类同名,无返回值,也不需要void,在new时候调用.也就是说,就是调用构造方法的时候. 所有类都有构造方法,如果你不编码则系统默认生成空的的 ...

  2. SetLocalTime设置本地时间

    /***************************************************************** 函数名:EnableSetTimePriviledge 功 能:开 ...

  3. Angular Cookie 读写

    var app = angular.module('Mywind',['ui.router']) app.controller('Myautumn',function($scope,$http,$fi ...

  4. [链接] Linux下常见的~/.bashrc、/etc/profile、/etc/ld.so.config小科普以及caffe编译遇到的相关问题解决

    由于博主设置禁止转载,这里贴一个链接,http://blog.csdn.net/u014266895/article/details/61928602,内容很有用,linux下很多软件问题都是各种路径 ...

  5. Small things are better

    Yesterday I had fun time repairing 1.5Tb ext3 partition, containing many millions of files. Of cours ...

  6. 通用adapter

    http://blog.csdn.net/lmj623565791/article/details/38902805/

  7. Web项目中加载Spring配置的常用方法

    1.web.xml中添加配置 <web-app>      <context-param>         <param-name>contextConfigLoc ...

  8. [BZOJ1036][ZJOI2008]树的统计Count 解题报告|树链剖分

    树链剖分 简单来说就是数据结构在树上的应用.常用的为线段树splay等.(可现在splay还不会敲囧) 重链剖分: 将树上的边分成轻链和重链. 重边为每个节点到它子树最大的儿子的边,其余为轻边. 设( ...

  9. 【BZOJ】1593: [Usaco2008 Feb]Hotel 旅馆

    [算法]线段树(经典线段树上二分) [题意]n个房间,m个询问,每次订最前的连续x个的空房间,或退订从x开始y个房间,求每次订的最左房间号. [题解]关键在于找连续x个空房间,经典二分. 线段树标记s ...

  10. I wrote a JSONHelper extension

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonso ...