「杭电java」杭电java期末试卷
今天给各位分享杭电java的知识,其中也会对杭电java期末试卷进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、我用java做杭电1001时老出现 Wrong Answer 请高手帮我修改一下 题目SUM(n) = 1 + 2 + 3 + ... + n.
- 2、杭电1001题,java编写,求解释,为什么两个结果之间留两行空行,题目里只有一行空行啊,以下代码能通过
- 3、杭电ACM 1870题怎么用JAVA做?我有需求必须JAVA做
- 4、杭电 2030 用java语言提交后 一直WA 代码如下
我用java做杭电1001时老出现 Wrong Answer 请高手帮我修改一下 题目SUM(n) = 1 + 2 + 3 + ... + n.
题目翻译:
A + B问题II
问题描述
我给你的一个非常简单的问题。有两个整数A和B,你的工作是计算A的总数 A + B。
输入
输入的首行表示测试用例的个数T(1≤T≤20的整数)。接下来,每行都是两个正整数,A 和B。注意这些整数非常大,你将不能处理32位的整数。你可以假设每个整数的长度将不超过1000。
输出
对每个测试用例,你应该输出两行。首行"例#:" ,#表示测试例的数量。第2 行是一个表达式"A B = 总数",总数表示A+B的结果. 注意表达式间有空格。在两个测试用例之间输出一个空白行。
输入样例
2
1 2
112233445566778899 998877665544332211
输出样例
例1: 1 + 2 = 3
例2: 112233445566778899 + 998877665544332211 = 1111111111111111110
===============代码==================
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/**
* 杭电
* @author 点子二木
* @version 1.0
* @date 2008-7-29
*
*/
public class Sum {
private static final String PRINT_INPUT_ERROR = "输入有误!";
static boolean inputFlag = true;
static ListCaseBean inputCaseList = new ArrayListCaseBean();
/**
* @param args
*/
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入测试用例个数:");
String str = scanner.next();
// System.out.println(str);
int count = 0;
try {
count = Integer.parseInt(str);
} catch (Exception e) {
System.out.print(PRINT_INPUT_ERROR);
return;
}
if (count 0 count 21) {
initCase(scanner, count);
if (!inputFlag) {
return;
}
System.out.println("/////////////结果输出//////////////////");
sumCal();
} else {
System.out.println("输入了错误的个数T(1≤T≤20的整数)!");
}
}
/**
* 求和计算
*/
private static void sumCal() {
int index = 1;
for (CaseBean cb : inputCaseList) {
long addFirst = cb.addFirst;
long addSecond = cb.addSecond;
long sum = addFirst + addSecond;
System.out.print("例" + index + ":");
System.out.println(addFirst + " + " + addSecond + " = " + sum);
System.out.println("");
index++;
}
}
/**
* 初始化一个用例
*
* @param scanner
* @param count
*/
private static void initCase(Scanner scanner, int count) {
for (int index = 0; index count; index++) {
if (!inputFlag) {
return;
}
System.out.println("输入用例" + (index + 1) + ":");
System.out.print("请输入被加数:");
String strFirst = scanner.next();
System.out.print("请输入加数:");
String strSecond = scanner.next();
CaseBean cb = new CaseBean();
try {
cb.addFirst = Long.parseLong(strFirst);
cb.addSecond = Long.parseLong(strSecond);
} catch (Exception e) {
System.out.print(PRINT_INPUT_ERROR);
inputFlag = false;
}
inputCaseList.add(cb);
System.out.println(" ");
}
}
}
class CaseBean {
long addFirst;
long addSecond;
long sum;
}
===============结果=====================
请输入测试用例个数:
2
输入用例1:
请输入被加数:1
请输入加数:2
输入用例2:
请输入被加数:112233445566778899
请输入加数:998877665544332211
/////////////结果输出//////////////////
例1:1 + 2 = 3
例2:112233445566778899 + 998877665544332211 = 1111111111111111110
杭电1001题,java编写,求解释,为什么两个结果之间留两行空行,题目里只有一行空行啊,以下代码能通过
HDU的Java编译环境是Windows
所以对应的换行符是\r\n
但是OJ在对比输出的时候,\r和\n并不加以区分
所以\n\n也是等同于\r\n
所以楼主的输出才能通过
杭电ACM 1870题怎么用JAVA做?我有需求必须JAVA做
import java.io.IOException;
import java.util.Scanner;
public class Main{
public static void main(String args[]) throws IOException{
int k=0;
Scanner scan = new Scanner(System.in);
while(scan.hasNext()) {
k = 0;
String str=scan.next();
for(int i=0;istr.length();i++){
if(str.charAt(i)=='('){
k++;
} else if(str.charAt(i)==')'){
k--;
}else if(str.charAt(i)=='B')break;
}
System.out.println(k);
}
}
}
杭电 2030 用java语言提交后 一直WA 代码如下
text.charAt(i);这里读取了输入内容转char后的内容,肯定匹配不到汉字。
杭电java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于杭电java期末试卷、杭电java的信息别忘了在本站进行查找喔。