在霍格沃茨找零钱(20)

【思路】统一换算为单位K,1G= 17*20K, 1S = 29K ,1K=1K,求应付和实付的差,再换算回本单位
import java.util.*;
public class Main{
    public static final int[] W = {17*29, 29, 1};//统一换算为单位K
    //1G= 17*20K, 1S = 29K ,1K=1K
    
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        String[] p = sc.next().split("\\.");//应付的价钱
        String[] a = sc.next().split("\\.");//实付的价钱
        //P给付
        int[] P = {Integer.parseInt(p[0]) ,Integer.parseInt(p[1]), Integer.parseInt(p[2])};
        //A实付
        int[] A = {Integer.parseInt(a[0]) ,Integer.parseInt(a[1]), Integer.parseInt(a[2])};
        
        int ta = A[0]*W[0] + A[1]*W[1] + A[2]*W[2];
        int tp = P[0]*W[0] + P[1]*W[1] + P[2]*W[2];
        
        int t = ta-tp;//差
        if(ta<tp){//实付<应付
            System.out.print("-");
            t = -t;
        }
        
        System.out.println(t/W[0]+"."+t%W[0]/W[1]+"."+t%W[0]%W[1]/W[2]);
    }
}


全部评论

相关推荐

02-10 12:23
已编辑
新余学院 C++
采集想要offer:专业技能那里要一条一条的列出来吧,感觉你项目很厉害了,但是如果你不写技术栈面试官对你项目不太懂的话都没办法问你八股😂C++都是基架岗,都是一群9✌🏻在卷,我觉得你要是有时间学个go把MySQL和redis写上去找个开发岗吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务