NOJ上机系统 准备中……

2022南京邮电大学上机复试:现场编程
Examination
  • 2022-03-26 15:35:00

    开始时间

  • 50 分钟

    考试时长

  • 2

    题目数量

  • 南京邮电大学

    考试组织

2022南京邮电大学上机复试:现场编程

【警示】研究生复试是国家级考试,一旦发现机试作弊将承担严重后果

考前准备:

【录屏软件oCam.exe】下载地址:oCam.zip

【MD5生成工具】下载地址:hash.zip

如以上链接无法下载请自行下载oCamHash-1.04

自行准备熟悉的IDE用于源代码编撰和调试运行

请提前准备好腾讯会议、钉钉会议与百度网盘客户端

注意事项:

  1. 请务必在考试前下载、准备和测试好上述工具,否则影响到考试,一切后果由考生本人自行承担;
  2. 请使用监考老师发放的账号密码登录,否则将无法查看试题(提示“无权限”);
  3. 推荐使用最新的Chrome浏览器访问本系统,如果使用时发现系统按钮无法点击、无法提交、编辑器空白、一直卡在加载中等情况,请检查是否使用了过老版本的浏览器;
  4. 现场编程宣布开始到代码提交以及Word文档完成是50分钟,不能超时,否则按照作弊处理;
  5. 在本次考试时需要使用屏幕录屏软件录制电脑屏幕,并在考试结束后四小时内上传到指定位置,请确保硬盘有足够空间录屏
  6. 在本次考试中,榜单及实时分数是不可见的

读写须知:

Q: 输入和输出在哪里读写?

A: 您编写的程序总是应当从stdin(标准输入)读取输入并且将输出写到stdout(标准输出)。举例说明,你可以在C语言中使用 scanf 或者C++中使用 cin 来从stdin中读取输入,并且使用C中的 printf 或C++中的 cout 来将输出写至stdout。

除了题目所要求的输出以外,您不应将任何其他数据输出到标准输出,否则评测结果将会是 Wrong Answer

您的程序将不会有权限读写文件。如果您尝试进行文件读写,评测结果将会是 Runtime Error 或是 Wrong Answer

您的程序将不会有权限执行系统操作(如挂起进程、关机、执行程序、删除文件等)。如果您尝试执行系统操作,评测结果将会是 Runtime Error 或是 Wrong Answer

请注意,在本次考试中,您的评测结果、运行时间与占用内存将不会实时返回,而是会返回一个 Judged 表明您的提交作答已经评测完毕。如果您认为刚刚的提交有错误,可以修改后重复提交,系统将会取最后一次提交得分为最终分数。唯一的例外是评测结果如果是 Compile Error 的将会返回给您,这意味着您的代码犯了编译错误,您可以查看返回的错误日志,并在进行修改后再次提交。

如果对输出输出有疑问,可以参考A+B 问题,建议于开考前一周内练习题库中题目,特别是A+B问题,熟悉系统输入输出格式。

接下来是PROB1001的 C++/G++ 解答:

#include <iostream>

using namespace std;

int main()
{
    int a,b;
    cin >> a >> b;
    cout << a+b << endl;
    return 0;
}

请注意,当使用 G++/GCC 时, main() 函数的返回类型必须是 int,否则评测结果将会是 Compile Error

接下来是PROB1001的 C/GCC 作答:

#include <stdio.h>

int main()
{
    int a,b;
    scanf("%d %d",&a, &b);
    printf("%d\n",a+b);
    return 0;
}

请注意,当使用 Java 时, 类名必须是 Main,不使用任何包 package 域,否则评测结果将会是 Runtime Error

接下来是PROB1001的 Java 作答:

import java.io.*;
import java.util.*;
public class Main
{
    public static void main(String args[]) throws Exception
    {
        Scanner cin=new Scanner(System.in);
        int a=cin.nextInt(),b=cin.nextInt();
        System.out.println(a+b);
    }
}

接下来是PROB1001的 Python2 作答:

print sum(int(x) for x in raw_input().split(' '))

接下来是PROB1001的 Python3 作答:

print(sum(int(x) for x in input().split(' ')))

接下来是PROB1001的 Go 作答:

package main
import "fmt"
func main() {
    var a, b int
    fmt.Scanf("%d%d", &a, &b)
    fmt.Printf("%d\n", a + b)
}

接下来是PROB1001的 C# 作答:

using System;
using System.Linq;

class Program {
    public static void Main(string[] args) {
        Console.WriteLine(Console.ReadLine().Split().Select(int.Parse).Sum());
    }
}

接下来是PROB1001的 PHP 8.1 作答:

<?=array_sum(fscanf(STDIN, "%d %d"));

接下来是PROB1001的 Javascript 作答:

const [a,b] = require('fs').readFileSync('/dev/stdin').toString().split(' ').map(n => parseInt(n, 10));
console.log(a+b);

接下来是PROB1001的 Ruby 作答:

a, b = gets.split.map(&:to_i)
puts(a + b)

接下来是PROB1001的 Rust 作答:

use std::io;
 
fn main() {
    let mut line = String::new();
    io::stdin().read_line(&mut line).expect("stdin");
 
    let sum: i32 = line.split_whitespace()
                       .map(|x| x.parse::<i32>().expect("integer"))
                       .sum(); 
    println!("{}", sum);
}

接下来是PROB1001的 Haskell 作答:

main = print . sum . map read . words =<< getLine

接下来是PROB1001的 Free Pascal 作答:

var a, b:longint;
begin
    readln(a, b);
    writeln(a + b);
end.

接下来是PROB1001的 Free Basic 作答:

Dim a As Integer
Dim b As Integer

Open Cons For Input As #1
Input #1, a, b
Print Str(a+b)