1

在 IOI 编程竞赛中有时会看到响应式任务。与批处理任务不同,反应式解决方案从另一个程序获取输入并输出它。该程序通常“查询”法官程序一定次数,然后输出最终答案。

一个例子

客户端程序逐行接受,并简单地回显它。当它遇到带有“done”的行时,它立即存在。

Java 中的客户端程序如下所示:

import java.util.*;
class Main{
  public static void main (String[] args){
     Scanner in = new Scanner(System.in);
     String s;
     while (!(s=in.nextLine()).equals("done"))
        System.out.println(s);
  }
}

判断程序提供输入并处理来自客户端程序的输出。在这个例子中,它向它提供一个预定义的输入,并检查客户端程序是否正确地回显了它。

一个会话可能是这样的:

Judge       Client
------------------
Hello
            Hello
World
            World
done

我在编写判断程序并让它判断客户端程序时遇到问题。如果有人可以为我的示例编写一个判断程序,我将不胜感激。

4

1 回答 1

0

您可以让程序通过命令提示符相互交谈。

在 Windows 上,你会写:

java judge | java client

因此,它将输出的管道judge传输到 的输入client

也就是说,只要judge写入标准输出流(它将)并且客户端正在从标准输入流(您的)读取,那么它就会工作。

于 2010-04-22T04:48:07.850 回答