f11235813213455 2021-10-03 06:30 采纳率: 100%
浏览 174
已结题

计算邮费的问题c++方面

1052:计算邮资

时间限制: 1000 ms 内存限制: 65536 KB
提交数: 63262 通过数: 30575
【题目描述】
根据邮件的重量和用户是否选择加急计算邮费。计算规则:重量在1000克以内(包括1000克), 基本费8元。超过1000克的部分,每500克加收超重费4元,不足500克部分按500克计算;如果用户选择加急,多收5元。

【输入】
输入一行,包含整数和一个字符,以一个空格分开,分别表示重量(单位为克)和是否加急。如果字符是y,说明选择加急;如果字符是n,说明不加急。

【输出】
输出一行,包含一个整数,表示邮费。

【输入样例】
1200 y
【输出样例】
17


#include<bits/stdc++.h>
using namespace std;
double a,ans;
int b=8;
string s;
int main()
{
    cin>>a>>s;
    if(a<=1000)
    {
        ans=b;
    }
    if(a>1000)
    {
        
        if ((a-1000)<500) 
        {
            a=1500;
        }
        if ((a-1000)>=500) 
        {
            ans=b+(a-1000)/500*4;
        }    
    }
    if(s=="y")
    {
        ans=ans+5;
    }
    if(s=="n")
    {
        ans=ans;
    }
    cout<<ans;
    return 0;    
}

运行结果

【1052】程序运行结果

用户名:542323486,题目编号:1052,运行编号:12550981,代码长度:367Bytes

未通过

测试点 结果 内存 时间
测试点1 答案正确 468KB 5MS
测试点2 答案正确 476KB 6MS
测试点3 答案正确 464KB 6MS
测试点4 答案正确 472KB 5MS
测试点5 答案正确 476KB 6MS
测试点6 答案错误 468KB 7MS
测试点7 答案错误 460KB 6MS
测试点8 答案错误 468KB 5MS
测试点9 答案错误 476KB 5MS
测试点10 答案正确 472KB 6MS

展开全部

  • 写回答

1条回答 默认 最新

  • [PE]经典八炮 2021-10-03 07:46
    关注
    #include<iostream>
    int main()
    {
        int a, r;
        char s;
        std::cin >> a >> s;
        if (a <= 1000)
        {
            r = 8;
        }
        else
        {
            a -= 1000;
            r = a / 500;
            if (a % 500)
                ++r;
            r = 8 + r * 4;
        }
        if (s == 'y')
            r += 5;
        std::cout << r;
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 10月12日
  • 已采纳回答 10月5日
  • 创建了问题 10月3日