• (Java实现) 美元汇率


    时空限制 1000ms/128MB

    题目背景
    此处省略maxint+1个数

    题目描述
    在以后的若干天里戴维将学习美元与德国马克的汇率。编写程序帮助戴维何时应买或卖马克或美元,使他从100美元开始,最后能获得最高可能的价值。

    输入输出格式
    输入格式:

    输入文件的第一行是一个自然数N,1≤N≤100,表示戴维学习汇率的天数。

    接下来的N行中每行是一个自然数A,1≤A≤1000。第i+1行的A表示预先知道的第i+1天的平均汇率,在这一天中,戴维既能用100美元买A马克也能用A马克购买100美元。

    输出格式:

    输出文件的第一行也是唯一的一行应输出要求的钱数(单位为美元,保留两位小数)。

    注意:考虑到实数算术运算中进位的误差,结果在正确结果0.05美元范围内的被认为是正确的,戴维必须在最后一天结束之前将他的钱都换成美元。

    输入输出样例
    输入样例#1:

    5
    400
    300
    500
    300
    250
    输出样例#1:

    266.67
    说明
    样例解释 (无需输出)

    Day 1 … changing 100.0000 美元= 400.0000 马克
    Day 2 … changing 400.0000 马克= 133.3333 美元
    Day 3 … changing 133.3333 美元= 666.6666 马克
    Day 5 … changing 666.6666 马克= 266.6666 美元


    import java.util.Scanner;
    
    
    public class meiyuanhuilv {
    	
    	public static void main(String[] args) {
    		Scanner sc =new Scanner(System.in);
    		int n = sc.nextInt();
    		double money=100;
    		int [] num = new int [n+1];
    		int temp = 0;//0时兑换马克,1时兑换美元
    		for (int i = 1; i < num.length; i++) {
    			num[i]=sc.nextInt();
    		}
    		for (int i = 1; i < num.length-1; i++) {
    			if(i==num.length-2 && temp==0){
    				if(num[i]>num[i+1]){
    					money *=num[i];
    					money/=num[i+1];
    				}
    				else{
    					break;
    				}
    			}
    			if(i==num.length-2 && temp==1){
    				int a  = Math.min(num[i], num[i+1]);
    				money /=a;
    				break;
    			}
    			
    			if(temp==0){
    				if(num[i+1]>num[i]){
    					continue;
    				}
    				else{
    					money=money*num[i];
    					temp=1;
    				}
    			}
    			else if(temp==1){
    				if(num[i+1]<num[i]){
    					continue;
    				}
    				else{
    					money = money/num[i];
    					temp=0;
    				}
    			}
    		}
    		System.out.printf("%.2f",money);
    		
    	}
    
    }
    
    
  • 相关阅读:
    【】C# Sealed、new、virtual、abstract、override的理解
    【】C# Sealed、new、virtual、abstract、override的理解
    C#中的堆和栈理解
    C#中的堆和栈理解
    C#中的堆和栈理解
    C#编译和运行过程图例
    C#编译和运行过程图例
    C#编译和运行过程图例
    【codeforces 257D】Sum
    【codeforces 348B】Apple Tree
  • 原文地址:https://www.cnblogs.com/a1439775520/p/12948843.html
Copyright © 2020-2023  润新知