java - 'Dcoder' 练习失败的测试用例
问题描述
所以我是编程的初学者,我认为这个简短的练习(见附图)很容易,但是当我提交代码时,它会返回测试用例的结果。我在其中一个测试用例中失败了,我不知道出了什么问题(遗憾的是,您看不到该测试用例的输入)。
这是我的代码:
Scanner sc = new Scanner(System.in);
int a = sc.nextInt(); // first distance
int m = sc.nextInt(); // fare for distance a
int n = sc.nextInt(); // fare for remaining distance
int d = sc.nextInt(); // total distance
int fare = (a*m)+((d-a)*n);
System.out.println(fare);
谁能看到这种计算在什么情况下不正确?它看起来很容易,但不知何故我现在想不出解决方案。
如果这是相关的,示例输入是:1 2 3 5 给出输出:14
解决方案
a
不是行驶距离的一部分。这只是计算从一个价格切换到另一个价格的阈值。这么说吧:如果d
小于a
,司机会开始付钱给顾客吗?不。 ;)
您应该计算路线第一部分的价格,然后有条件地,如果d
大于a
,则将路线剩余部分的价格添加到该价格中。
推荐阅读
- c# - 从由 C++ 程序写出的 C# 文件中读取二进制对象
- python - “需要”(pyproject.toml),本地包处于可编辑模式
- python - 我正在尝试在 while 循环中创建一个列表,但我的循环不会重新启动
- neural-network - DNN 算法中基于树的降维
- javascript - 如何动画变化的innerHTML?
- excel - 有没有办法完全删除间接公式?
- javascript - 如何在Javascript中安装库'When'
- c++ - 在对的向量中查找元素并输出c ++
- angular - 组件逻辑中异步检索数据的问题
- python - 如何更改 Tkinter 错误框上的图标?(尝试更改“图标”参数但不起作用)