zoukankan      html  css  js  c++  java
  • 7.16每日一题题解

    National Project

    涉及知识点:

    • 数学
    • 思维

    solution:

    • 通过题意可知,本题一共有两个地方要解决
    • 第一个就是要修完,第二个是要至少有一半的路是高质量的
    • 那么因为好天气和坏天气是可以看做一个周期的,所以需要的总天数至少是一半路的长度/g(这个地方代表起码修高质量路要的天数)*(g+b)
    • 然后我们要考虑一半路的长度和g的关系(其实没必要考虑g和b的关系或者g和n的关系),
      • 发现如果一半路的长度 mod g 为零,那么代表我们多修了一个b天的需要减掉
      • 发现如果一半路的长度 mod g 不为零,那么代表我们少修了一个大于1小于g的天数,加上即可

    std:

    #include <cstdio>
    #include <algorithm>
    #include<iomanip>
    #include <iostream>
    #include <cmath>
    #include <string>
    #include <vector>
    #include <set>
    #include <queue>
    #include <cstring>
    #include<stack>
    #include <cassert>
    #include<map>
     
    
    using namespace std;
    typedef long long LL;
     
    LL   n, k, m ;
    
    
    LL i,j,g;
    int main()
    {
       
       double m ;
       int b,n;cin >>n;
       for(int i=1;i<=n;i++){
        cin >>m>> g>>b;
        j = ceil(m/2);
        LL sum =0 ;
        sum +=j/g*(g+b);
        if(j%g==0)sum-=b;
        else sum+=j%g;
        k = m;
       cout<<max(k,sum)<<endl;
       }
     
        return 0;
     
    }
    
  • 相关阅读:
    MySQL客户端mysqladmin命令
    13 Linux磁盘管理
    12 Linux软件管理
    11 Linux压缩打包
    09 Linux输入输出
    08 LinuxACL控制
    07 Linux特殊权限
    06 Linux基本权限
    05 Linux用户管理
    04 Linux文件编辑
  • 原文地址:https://www.cnblogs.com/QFNU-ACM/p/13321909.html
Copyright © 2011-2022 走看看