java小题:福尔摩斯的约会
原题地址:https://www.nowcoder.com/pat/6/problem/4040
防止广告嫌疑,原题为:
题目描述
大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大侦探很
快就明白了,字条上奇怪的乱码实际上就是约会的时间“星期四 14:04”,因为前面两字符串中第1对相同的大写英文字母(大小写有区分)是
第4个字母'D',代表星期四;第2对相同的字符是'E',那是第5个英文字母,代表一天里的第14个钟头(于是一天的0点到23点由数字0到9、
以及大写字母A到N表示);后面两字符串第1对相同的英文字母's'出现在第4个位置(从0开始计数)上,代表第4分钟。现给定两对字符串,
请帮助福尔摩斯解码得到约会的时间。
输入描述:
输入在4行中分别给出4个非空、不包含空格、且长度不超过60的字符串。
输出描述:
在一行中输出约会的时间,格式为“DAY HH:MM”,其中“DAY”是某星期的3字符缩写,即MON表示星期一,TUE表示星期二,WED表示星期三,THU表示星期 四,FRI表示星期五,SAT表示星期六,SUN表示星期日。题目输入保证每个测试存在唯一解。
输入例子:
3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm
输出例子:
THU 14:04
花了2个小时多小时,终于调试出,代码如下:
package ceshi; import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
import java.util.Vector; /**
* Created by mrma on 17-4-10.
*/
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int i = 0;
String yu[] = new String[4]; while (i < 4){
yu[i] = sc.nextLine();
i++;
} char a[][] = new char[yu.length][]; int tongyi[] = new int[3]; for (i = 0;i<yu.length;i++){
a[i] = yu[i].toCharArray();
}
int j = 0;
for(i = 0;i<a[0].length;i++){ if(a[0][i] == a[1][i]){
if(a[0][i] >= 65 && a[0][i] <= 90){
tongyi[j] = a[0][i] - 65 + 1;
if(j == 1)
tongyi[j] += 9;
j++;
}
if(tongyi[0] != 0 && a[0][i] >= '0' && a[0][i]<='9'){
tongyi[1] = Integer.valueOf(String.valueOf(a[0][i]));
j++;
} } if(j == 2)
break;
} for(i = 0;i<a[2].length;i++){
if(a[2][i] == a[3][i] && a[2][i]>= 97 && a[2][i]<=122 ){
tongyi[2] = i;
break;
}
} String jg="";
switch (tongyi[0]){
case 1:
jg = "MON ";
break;
case 2:
jg = "TUE ";
break;
case 3:
jg = "WED ";
break;
case 4:
jg = "THU ";
break;
case 5:
jg = "FRI ";
break;
case 6:
jg = "SAT ";
break;
case 7:
jg = "SUN ";
break;
}
System.out.print(jg);
System.out.printf("%02d",tongyi[1]);
System.out.printf(":%02d",tongyi[2]); sc.close();
}
}
一点一点进步了。却发现有好多现成的类没有用的,为了能简洁代码,尝试用了多次数组,也发现char类型为数字时,要先转字符串再转数字。
如果有更好的建议或想法,希望您能提出,谢谢。
java小题:福尔摩斯的约会的更多相关文章
- 五道java小题,补更四道java小题
一:分析以下需求,并用代码实现 1.定义List集合,存入多个字符串 2.删除集合中字符串"def" 3.然后利用迭代器遍历集合元素并输出 import j ...
- Java小题,通过JNI调用本地C++共享库中的对应方法实现杨辉三角的绘制
1.在Eclipse中配置Javah,配置如下 位置是你javah.exe在你电脑磁盘上的路径 位置:C:\Program Files\Java\jdk1.8.0_112\bin\javah.exe ...
- 学习练习 java 小题
Scanner a = new Scanner(System.in); System.out.println("请输入您的分数"); int fen = a.nextInt(); ...
- 浙江大学PAT上机题解析之1014. 福尔摩斯的约会 (20)
1014. 福尔摩斯的约会 (20) 时间限制 50 ms 内存限制 32000 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Y ...
- PAT(B) 1014 福尔摩斯的约会(Java)
题目链接:1014 福尔摩斯的约会 注意 三个字眼:"第1对","第2对","第1对",因此如果你用了循环,别忘了break,因为后面也可能 ...
- java错题本
1.判断题: Java程序一般应当含有main方法,因为它是所有JaVa程序执行的入口(错) 解析:applet(java小程序)不用,application(java应用程序)需要.(见java a ...
- PAT乙级 1014. 福尔摩斯的约会 (20)
1014. 福尔摩斯的约会 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 大侦探福尔摩斯接到一张奇怪的 ...
- PAT-乙级-1014. 福尔摩斯的约会 (20)
1014. 福尔摩斯的约会 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 大侦探福尔摩斯接到一张奇怪的 ...
- 50道经典的JAVA编程题 (6-10)
50道经典的JAVA编程题 (6-10),今晚做了10道了,累死了...感觉难度不是很大,就是不知道是不是最好的实现方法啊!希望大神们能给指点哈... [程序6]GCDAndLCM.java 题目:输 ...
随机推荐
- 单点登录实现(spring session+redis完成session共享)
一.前言 项目中用到的SSO,使用开源框架cas做的.简单的了解了一下cas,并学习了一下 单点登录的原理,有兴趣的同学也可以学习一下,写个demo玩一玩. 二.工程结构 我模拟了 sso的客户端和s ...
- 前端安全(XSS、CSRF防御)
一.网络安全 OWASP:开放式Web应用程序安全项目(OWASP,Open Web Application Security Project) OWASP是一个开源的 ...
- 获取LayoutInflater对象的方法和inflate方法的一些参数问题
一.获取LayoutInflater的三种方法 1. LayoutInflater layoutInflater = (LayoutInflater) MainActivity.this.getSys ...
- 解决clipboard手机端无法复制的一种思路
最近,做了一个切图的小项目 主要内容是微信号的推广页面,上面会有精美的图片和微信号:) 点击按钮,会复制到粘贴板上,自己去微信里面粘贴搜索:),懒人会进行一系列复杂操作么,不看好 首先,百度了一下,看 ...
- TP框架 基础1
php框架 一.真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格 ...
- beauty
至你我最美的邂逅 年意渐渐消失,一转眼元宵的炮竹将要响起,今天是贰零一七年二月九号,即是元宵节前两天,在这里我写下我这几天的收获. 离元宵节还有四天,我好久都没跟朋友一起认真的玩过,几天我去了我发小的 ...
- Node.js web快速入门 -- KoaHub.js组件koa-static-server
koa-static-server Static file serving middleware for koa with directory, rewrite and index support k ...
- 求取水仙花数 && 将整数分解成质因数
[程序3] 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如: 153是一个"水仙花数", ...
- 1820: [JSOI2010]Express Service 快递服务
1820: [JSOI2010]Express Service 快递服务 Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 847 Solved: 325 ...
- 使用D3 Geo模块画澳大利亚地图
数据 数据可视化主要旨在借助于图形化手段,清晰有效地传达与沟通信息.因此做数据可视化前需要想明白2件事: 你有什么数据? 你要传达什么信息? 本文中的示例中,将以不同的颜色显示澳大利亚不同地区的客户数 ...