题目名称 390. 溶液模拟器
输入输出 simulator.in/out
难度等级 ★☆
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 10
题目来源 Gravatarcqw 于2009-11-02加入
开放分组 全部用户
提交状态
分类标签
基本 数学
分享题解
通过:28, 提交:108, 通过率:25.93%
Gravatar筽邝 100 0.041 s 0.43 MiB C++
Gravatar龙行天下 100 0.049 s 0.28 MiB Pascal
GravatarTruth.Cirno 100 0.122 s 0.41 MiB C++
Gravatar浮生随想 100 0.148 s 0.47 MiB C++
Gravatar打不死的羊 100 0.161 s 0.23 MiB Pascal
GravatarCzb。 100 0.166 s 0.41 MiB C++
Gravatar.Xmz 100 0.167 s 0.23 MiB Pascal
GravatarMakazeu 100 0.167 s 0.41 MiB C++
GravatarEnAsn 100 0.168 s 0.26 MiB Pascal
Gravatar苏轼 100 0.170 s 0.23 MiB Pascal
本题关联比赛
20091102
关于 溶液模拟器 的近10条评论(全部评论)
数据好像在换行上有问题的说
GravatarTruth.Cirno
2012-02-14 20:12 3楼
.
GravatarHamster
2009-11-02 18:03 2楼
P和Z是大写字母,而不是小写字母。
Gravatarybh
2009-11-02 16:06 1楼

390. 溶液模拟器

★☆   输入文件:simulator.in   输出文件:simulator.out   简单对比
时间限制:1 s   内存限制:128 MiB

小 Y 太失败了,他虽然在化学实验课上拿来了很多溶液,但是还是没有办法配成想要的溶液,万一倒错了就没有办法挽回了,小 Y 迟迟不敢下手。

于是小 Y 到网上下载了一个溶液配置模拟器。溶液配置模拟器是这样的程序:模拟器在电脑中构造一种虚拟溶液,然后你可以虚拟地向当前虚拟溶液中加入一定浓度一定质量的这种溶液,模拟器会快速地算出倒入后虚拟溶液的浓度和质量。当然,计算机最可爱的地方就是当你倒错了可以撤销。

模拟器的使用步骤是这样的:

1. 为模拟器设置一个初始质量和浓度 V0 , C0% ( 0 ≤ C0≤100 )。

2. 进行一系列操作,模拟器支持两种操作:

P(v,c) 操作:表示向当前的虚拟溶液中加入质量为 v 浓度为 c 的溶液;

Z 操作:撤销上一步 P 操作。

但是,小 Y 不小心把模拟器弄丢了……,眼看考试迫在眉睫,小 Y 只能依靠你了。

输入格式:

第一行,两个整数 V0 , C0 。

第二行,一个整数 n ,表示操作数( n ≤ 10000 )。

接下来 n 行,每行一条操作,格式为:

P v c 或 Z 。

之间用一个空格隔开,当只剩初始溶液的时候,再撤销就没有用了。

任意时刻质量不会超过 2 31 -1 。

输出格式:

n 行,每行两个数 V i , C i , 其中 V i 为整数, C i 为实数(保留 5 位小数),之间用一个空格隔开。其中,第 i 行表示第 i 次操作以后的溶液质量和浓度。

输入样例:

100 100

2

P 100 0

Z

输出样例:

200 50.00000

100 100.00000