1037. 在霍格沃茨找零钱(20)
来源:互联网 发布:大逃杀游戏知乎 编辑:程序博客网 时间:2024/05/29 07:34
如果你是哈利·波特迷,你会知道魔法世界有它自己的货币系统 —— 就如海格告诉哈利的:“十七个银西可(Sickle)兑一个加隆(Galleon),二十九个纳特(Knut)兑一个西可,很容易。”现在,给定哈利应付的价钱P和他实付的钱A,你的任务是写一个程序来计算他应该被找的零钱。
输入格式:
输入在1行中分别给出P和A,格式为“Galleon.Sickle.Knut”,其间用1个空格分隔。这里Galleon是[0, 107]区间内的整数,Sickle是[0, 17)区间内的整数,Knut是[0, 29)区间内的整数。
输出格式:
在一行中用与输入同样的格式输出哈利应该被找的零钱。如果他没带够钱,那么输出的应该是负数。
输入样例1:10.16.27 14.1.28输出样例1:
3.2.1输入样例2:
14.1.28 10.16.27输出样例2:
-3.2.1
import java.util.*;public class Main { static Scanner in=new Scanner(System.in); public static void main(String[] args) { while(in.hasNext()){ String s1=in.next(); String s2=in.next(); String[] a=s1.split("\\."); String[] b=s2.split("\\."); int[] c=new int[3]; int[] d=new int[3]; int[] e=new int[3]; boolean f=false; for (int i = 0; i < 3; i++) { c[i]=Integer.parseInt(a[i]); d[i]=Integer.parseInt(b[i]); } if(s1.compareTo(s2)<0){ if(d[2]-c[2]>=0) e[2]=d[2]-c[2]; else{ e[2]=d[2]+29-c[2]; d[1]--; } if(d[1]-c[1]>=0) e[1]=d[1]-c[1]; else{ e[1]=d[1]+17-c[1]; d[0]--; } e[0]=d[0]-c[0]; } else if(s1.compareTo(s2)>0){ f=true; if(c[2]-d[2]>=0) e[2]=c[2]-d[2]; else{ e[2]=c[2]+29-d[2]; c[1]--; } if(c[1]-d[1]>=0) e[1]=c[1]-d[1]; else{ e[1]=c[1]+17-d[1]; c[0]--; } e[0]=c[0]-d[0]; } else e[0]=e[1]=e[2]=0; if(f) System.out.println("-"+e[0]+"."+e[1]+"."+e[2]); else System.out.println(e[0]+"."+e[1]+"."+e[2]); } } }
使用split时,遇到*,.,|,\,等特殊符号时要进行转义,即加上\\,因为split参数是正则表达式的表达方式,具体可以参考我写的split用法
没有得满分,好气哦,求大神指教
阅读全文
0 0
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 【PAT】1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- 1037. 在霍格沃茨找零钱(20)
- Xamarin.Forms 基础——App Class
- c++导出类的简单实现
- java 图片合成
- springCloud(四)
- 特征选择
- 1037. 在霍格沃茨找零钱(20)
- luogu 3907 :Trie 树板子(dalao勿看,水的辣眼睛)
- [数据库与SQL]
- java语言的自增++和自减--
- Android使用TextView实现跑马灯效果
- 谷歌发布 TensorFlow Serving
- ubuntu docker 开启ssh
- 首页实现_头部搜索框
- (OK) 编译内核及移植MPTCP过程