洛谷练习题1-2

小玉家的电费

分段函数

#include <iostream>
using namespace std;
int main()
{
    
    
    float k,sum=0;
    cin>>k;
        if(k>=401)
        {
    
    
            sum=sum+(k-400)*0.5663;
            k=400;
        }
        if(k>=151)
        {
    
    
            sum=sum+(k-150)*0.4663;
            k=150;
        }
        sum=sum+0.4463*k;
    sum=int(sum*10+0.5);
    sum=sum/10;
    cout<<sum;
    return 0;
}

不高兴的津津

简单的判断

#include <iostream>
using namespace std;
int main() {
    
    
    int max=8,index=0;
    int school,mom;
    for(int i=1;i<8;i++)
    {
    
    
        cin>>school>>mom;
        int temp=school+mom;
        if(temp>max)
        {
    
    
            max=temp;
            index=i;
        }
    }
    cout<<index;
    return 0;
}

津津的储蓄计划

(注意一下结果用double?年末的1.2大概可能会产生小数,我不太清楚会不会有这样的测试数据)

#include <iostream>
using namespace std;
int main()
{
    
    
    int moneyInhand=0,moneyInmom=0;
    int cost;
    double sum=0;
    bool flag=true;//是否 不超预算
    for(int i=1;i<13;i++)
    {
    
    
        moneyInhand+=300;
        cin>>cost;
        if(moneyInhand<cost)
        {
    
    
            cout<<-i;
            flag=false;
            break;
        }
        else
        {
    
    
            moneyInhand=moneyInhand-cost;
            if(moneyInhand>=100)
            {
    
    
                moneyInmom+=(moneyInhand/100) *100;
                moneyInhand-=(moneyInhand/100)*100;
            }
        }
    }
    if(flag)
    {
    
    
        sum=double(moneyInmom)*1.2+moneyInhand;
        cout<<sum;
    }
}

买铅笔

我开始以为是组合买笔的动态规划……没认真读题……写了半天才发现不对orz
题干好长,我以为会有点东西,其实没有

#include <iostream>
using namespace std;
inline int mymin(int a,int b)//试图加速
{
    
    
   return a<b?a:b;
}
int main()
{
    
    
    int n;
    int k[5];
    int m[5];
    int minsum=1<<30;
    cin>>n>>k[1]>>m[1]>>k[2]>>m[2]>>k[3]>>m[3];
    for(int i=1;i<=3;i++)
    {
    
    
        int num=0,money=0;
        while(num<n)
        {
    
    
            num+=k[i];
            money+=m[i];
        }
        if(money<minsum)minsum=money;
    }
    cout<<minsum;
}

猜你喜欢

转载自blog.csdn.net/Kaiser_syndrom/article/details/103552487