Problem Description

Ignatius is building an Online Judge, now he has worked out all the problems except the Judge System. The system has to read data from correct output file and user’s result file, then the system compare the two files. If the two files are absolutly same, then the Judge System return “Accepted”, else if the only differences between the two files are spaces(’ ‘), tabs(‘\t’), or enters(‘\n’), the Judge System should return “Presentation Error”, else the system will return “Wrong Answer”.

Given the data of correct output file and the data of user’s result file, your task is to determine which result the Judge System will return.

Input

The input contains several test cases. The first line of the input is a single integer T which is the number of test cases. T test cases follow.

Each test case has two parts, the data of correct output file and the data of the user’s result file. Both of them are starts with a single line contains a string “START” and end with a single line contains a string “END”, these two strings are not the data. In other words, the data is between the two strings. The data will at most 5000 characters.

Output

For each test cases, you should output the the result Judge System should return.

Sample Input

4

START

1 + 2 = 3

END

START

1+2=3

END

START

1 + 2 = 3

END

START

1 + 2 = 3

END

START

1 + 2 = 3

END

START

1 + 2 = 4

END

START

1 + 2 = 3

END

START

1 + 2 = 3

END

Sample Output

Presentation Error

Presentation Error

Wrong Answer

Presentation Error

就是输入输出,简单的判断PE,WA,AC这几种情况。

START是开始输入了,

END是结束输入了。数据在这个之间!

每一组有2个 START和END。

就是判断这2个之间的数据是PE,WA还是AC。

分析:

用2字符串分别存储这2个需要比较的数据,遇到换行需要在字符串中加入’\n’。

先看这2个字符串是不是相等,如果相等,就是AC。

不相等,再来判断是PE还是WA。

import java.util.Scanner;
/**
* @author 陈浩翔
*
* 2016-5-26
*/
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
sc.nextLine();
while (t-- > 0) {
String a = "";
String b = "";
while (true) {
String str = sc.nextLine();
if ("END".equals(str)) {
break;
}
if ("START".equals(str)) {
continue;
}
a=a+str;
a=a+"\n";
} while (true) {
String str = sc.nextLine();
if ("END".equals(str)) {
break;
}
if ("START".equals(str)) {
continue;
}
b=b+str;
b=b+"\n";
}
int con = 0;// -1--PE,0--WA,1--AC // System.out.println(a);
// System.out.println(a.length());
// System.out.println(b);
// System.out.println(b.length()); if(a.equals(b)){
con=1;
}else{
con=-1;
String stra="";
for(int i=0;i<a.length();i++){
if(a.charAt(i)==' '||a.charAt(i)=='\t'||a.charAt(i)=='\n'){
continue;
}
stra=stra+a.charAt(i);
}
String strb="";
for(int i=0;i<b.length();i++){
if(b.charAt(i)==' '||b.charAt(i)=='\t'||b.charAt(i)=='\n'){
continue;
}
strb=strb+b.charAt(i);
}
// System.out.println(stra);
// System.out.println("-------------");
// System.out.println(strb);
if(stra.equals(strb)){
con=-1;
}else{
con=0;
}
} if(con==0){
System.out.println("Wrong Answer");
}else if(con==-1){
System.out.println("Presentation Error");
}else{
System.out.println("Accepted");
}
}
}
}

HDOJ/HDU 1073 Online Judge(字符串处理~)的更多相关文章

  1. HDU 1073 Online Judge (字符串处理)

    题目链接 Problem Description Ignatius is building an Online Judge, now he has worked out all the problem ...

  2. HDU 1073 Online Judge(字符串)

    Online Judge Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Tot ...

  3. 解题报告:hdu 1073 Online Judge

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1073 Problem Description Ignatius is building an Onli ...

  4. HDOJ/HDU 1062 Text Reverse(字符串翻转~)

    Problem Description Ignatius likes to write words in reverse way. Given a single line of text which ...

  5. 【HDOJ】1073 Online Judge

    这道题TLE了N多次,完全不明白为什么,稍微改了一下,居然过了.使用gets过的,看讨论帖有人还推荐用hash. #include <stdio.h> #include <strin ...

  6. HDU 1073 - Online Judge

    模拟评测机判断答案 先判断有没有不一样的 有的话再提取出 有效子列 看看有没有错的 #include <iostream> #include <cstdio> #include ...

  7. HDOJ(HDU).1059 Dividing(DP 多重背包+二进制优化)

    HDOJ(HDU).1059 Dividing(DP 多重背包+二进制优化) 题意分析 给出一系列的石头的数量,然后问石头能否被平分成为价值相等的2份.首先可以确定的是如果石头的价值总和为奇数的话,那 ...

  8. HDOJ(HDU).1258 Sum It Up (DFS)

    HDOJ(HDU).1258 Sum It Up (DFS) [从零开始DFS(6)] 点我挑战题目 从零开始DFS HDOJ.1342 Lotto [从零开始DFS(0)] - DFS思想与框架/双 ...

  9. HDOJ(HDU).1035 Robot Motion (DFS)

    HDOJ(HDU).1035 Robot Motion [从零开始DFS(4)] 点我挑战题目 从零开始DFS HDOJ.1342 Lotto [从零开始DFS(0)] - DFS思想与框架/双重DF ...

随机推荐

  1. 《你不常用的c#之四》:Array的小抽屉ArraySegment

    转载自csdn:http://blog.csdn.net/robingaoxb/article/details/6200060 一:)略谈      ArraySegment顾名思义就是Array区块 ...

  2. RABBITMQ安装注意点

    关于 RABBITMQ的配置问题安装问题windows7 和window 10我都试了windows10安装和配置不要出现中文和空格,不然你日寒飞的心都有了ERLANG的安装也是Win7直接默认的路径 ...

  3. OC - 14.NSOperation与NSOperationQueue

    简介 通过NSOperation与NSOperationQueue的组合也能实现多线程 通常将任务封装成NSOperation对象,并将对象添加到NSOperationQueue中实现 NSOpera ...

  4. C# 之【获取网页】

    C#获取指定网页HTML原代码可使用 WebClient WebRequest HttpWebRequest 三种方式来实现. 当然也可使用webBrowse!在此就不研究webBrowse如何获取了 ...

  5. CSS 分组 和 嵌套 选择器

    Grouping Selectors 在样式表中有很多具有相同样式的元素. h1{color:green;}h2{color:green;}p{color:green;} 为了尽量减少代码,你可以使用 ...

  6. Fibonacci 数列递归 重复计算

    public class Fibonacci{ public static long F(long n){ System.out.println("call F" + n); ) ...

  7. 242. Valid Anagram(C++)

    242. Valid Anagram Given two strings s and t, write a function to determine if t is an anagram of s. ...

  8. [Machine Learning] Probabilistic Graphical Models:一、Introduction and Overview(1、Overview and Motivation)

    一.PGM用来做什么 1.  医学诊断:从各种病症分析病人得了什么病,该用什么手段治疗 2.  图像分割:从一张百万像素级的图片中分析每个像素点对应的是什么东西 两个共同点:(1)有非常多不同的输入变 ...

  9. Activity生命周期回顾

    先来一张经典的生命周期图: ------------------------------------------------------------- 工程代码: ActivityLifeCycle. ...

  10. log4j详细配置说明

    log4j配置祥解 第一步:加入log4j-1.2.8.jar到lib下.第二步:在CLASSPATH下建立log4j.properties.内容如下:1 log4j.rootCategory=INF ...