ECJTU_ACM 2014新生训练赛(二)1003 题解

滑板鞋

Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other)
Total Submission(s) : 33   Accepted Submission(s) : 13
Font: Times New Roman | Verdana | Georgia
Font Size: ← →

Problem Description

libin是个土鳖,小时候没看过电梯,现在见到电梯就要玩。。
但是这一天电梯坏了,libin要从第一层去n楼,他伤心的走楼梯去了(每层100级)。
一步两步,一步两步,一步一步似爪牙,似魔鬼的步伐,摩擦 摩擦,在这光滑的地上摩擦,摩擦。。。。
由于libin的滑板鞋太差了,所以导致他从第二层每层每秒走动的台阶数减少i/50,求出他什么时候到达n楼。(i为所在的楼层)

Input

有多组数据,每组数据有一个整数n(libin要去的楼层),一个实数k(开始时每秒走的台阶数)(0<n<=15,0<k<=3)。

Output

如果他到了目的地输出所用时间(保留三位小数),如果已经累死则输出-1。

Sample Input

1 1
4 1
15 1

Sample Output

0.000
315.278
-1

Author

moonlike 


解题思路: 只要注意所需使用的数据类型,直接暴力模拟其操作即可 。

#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <string>
#include <sstream>
#include <algorithm>
#include <queue>
#include <stack>
#include <map>
#include <set>
#define PI 3.1415926
using namespace std;

double n;   ///楼层
double k;   ///速度
double t;   ///时间

int main( )
{
    while(scanf("%lf %lf",&n, &k) != EOF)
    {
        t = 0;    ///对时间进行初始化
        for(int i = 1;i < n;i++)     ///
        {
            if(i != 1)   ///第一层是不需要进行减速的
            {
                k -= i/50.0;
                if(k <= 0)   ///一旦速度小于等于0,意味着某人会累死
                {
                    t = -1;   ///做标记
                    break;   ///某人已经会累死,不需要再进行计算了,用 break 跳出整个for循环
                }
            }
            t += 100/k;
        }
        if(t == -1)
        {
            printf("-1\n");
        }
        else
        {
            printf("%.3f\n",t);
        }
    }
    return 0;
}


内容概要:本文详细介绍了利用粒子群优化(PSO)算法解决配电网中分布式光伏系统的选址与定容问题的方法。先阐述了问题背景,即在复杂的配电网环境中选择合适的光伏安装位置和确定合理的装机容量,以降低网损、减小电压偏差并提高光伏消纳效率。接着展示了具体的PSO算法实现流程,包括粒子初始化、适应度函数构建、粒子位置更规则以及越界处理机制等关键技术细节。文中还讨论了目标函数的计思路,将多个相互制约的目标如网损、电压偏差和光伏消纳通过加权方式整合为单评价标准。此外,作者分享了些实践经验,例如采用前推回法进行快速潮流计算,针对特定应用场景调整权重系数,以及引入随机波动模型模拟光伏力特性。最终实验结果显示,经过优化后的方案能够显著提升系统的整体性能。 适用群:从事电力系统规划与计的专业士,尤其是那些需要处理分布式能源集成问题的研究员和技术员。 使用场景及目标:适用于希望深入了解如何运用智能优化算法解决实际工程难题的士;旨在帮助读者掌握PSO算法的具体应用方法,从而更好地应对配电网中分布式光伏系统的选址定容挑战。 其他说明:文中提供了完整的Matlab源码片段,便于读者理解和复现研究结果;同时也提到了些潜在改进方向,鼓励进一步探索和创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值