• 个人简介

    Accepted! 小游戏:https://poki.com/zh?ref=hao.archcookie.com

    【我认为母猪的产后护理,首先要从产前做起,就好像铁甲小宝和钢铁侠以及铁臂阿童木其实是三兄弟,神龙斗士和光能使者曾经也是一对好基友。】

    【你说得对,但《原神》是由米哈游自主研发的一款全新开放世界冒险RPG,派大星和海绵宝宝其实更适合去野区抓爆美羊羊,而且迪迦奥特曼肯定是东北的,这也解释了为什么光头强要去砍树。】

    【不敢苟同,我认为炒意大利面就应该拌老干妈,因为螺丝钉向内扭的时候会产生二氧化碳,不利于经济发展,并且多吃鲱鱼罐头有通肠道的功效。】

    【我有不同见解,我认为孙悟空被压在五指山下受牛顿第二定律影响其实是可以自娩的,通过基因法则推断,后代为孙膑,他谱写的葵花宝典,极大程度上论证了东方不败的性别。】

    【关于这个事,我简单说两句,至于我的身份,你明白就行,总而言之,这个事呢,现在就是这个情况,具体的呢,大家也都看得到,我因为这个身份上的问题,也得出来说那么几句,可能,你听的不是很明白,但是意思就是那么个意思。这种事情见得多了,我只想说懂得都懂,不懂的我也不多解释,毕竟自己知道就好,细细品吧。你们也别来问我怎么了,利益牵扯太大,说了对你我都没好处,当不知道就行了,其余的我只能说这里面水很深,牵扯到很多东西。详细情况你们自己是很难找的,网上大部分已经删除干净了。所以我只能说懂得都懂。】 二分查找模板 #include #include using namespace std; int a[100001],x; int main(){ int n,m; cin>>n>>m; for(int i=1;i<=n;++i){ cin>>a[i]; } for(int i=1;i<=m;++i){ cin>>x; int left=1,right=n,mid=(left+right)/2; int flag=0; while(left<=right){ if(a[mid]x){ flag=1; cout<<mid<<endl; break; } else if(a[mid]<x){ left=mid+1; } else right=mid-1; mid=(left+right)/2; } if(flag0)cout<<-1<<endl; } return 0; } Copy

    字符串

    基本定义 string 字符串名; 初始化 string 字符串名 = "赋值内容"; 基本输入 1、不带空格输入 cin >> 字符串名; 2、带空格输入 getline(cin,字符串名); 基本输出 cout << 字符串 ; 基本函数 1、+ += > < == != >= <= 2、求string的长度 字符串名.size(); 删除子串 string s1 = "Real Steel"; s1.erase(1, 3); //删除从位置1开始后面的3个字符,此后 s1 = "R Steel" 插入子串 string s1 = "Limitless", s2="00"; s1.insert(2, "123"); //在下标 2 处插入字符串"123",s1 = "Li123mitless" 查找子串 string s1 = "apple people"; s1.find("ple"); //查找 "ple" 出现的位置 返回值为子串第一次出现的下标返回值为2 s1.find("ple",5); //从下标为5的地方查找"ple"的位置,返回值为9 s1.find("orange"); //查找"orange"的位置,没有查找到,所以返回-1

    遍历字符串
    string str;
    cin >> str;
    int len = str.size();
    for(int i=0;i<len;i++)
    {
        printf("%c",str[i]);
    }
    特别注意
    字符串的整体输入输出不能使用scanf()和printf()
    

    Copy

    队列

    1、队列的定义 queue<关键词> 队名; 2、队列的基本操作 队名.操作函数名() 队名.push(入队元素) //入队 队名.pop() //出队 队名.front() //返回值为队头 队名.back() //返回队尾 队名.size() //返回值为队中元素个数 队名.empty() //队空返回 true 不空返回false !队名.empty() //队空返回 false 不空返回 true

    #include<iostream>
    #include<cstdio>
    #include<queue>
    using namespace std;
    int main()
    {
    //	queue<类型> 队列名; 
        queue<int> que; //创建队列 
        que.push(1);//将1入队 
        que.push(3);//将3入队 
        que.push(2);//将2入队 
        cout << "查看队头" << que.front() << endl; 
        cout << "查看队尾" << que.back() << endl; 
        que.pop();//出队
        cout << "查看队列元素个数" << que.size() << endl; 
        //遍历队列
        while( !que.empty() ) // que.empty() 队列为空 
        {
            cout << que.front() <<endl;
            que.pop(); 
        }
        return 0;
    }
    

    Copy

    栈与队列操作

    //stack sta;//创建一个栈 //sta.push(a);//入栈 //int a=sta.top();//返回栈顶元素 //sta.pop();//出栈 //sta.empty();//判断栈是否为空 1为空,0为非空 //sta.clear();//清空

    //queue<int> que;//创建一个队列
    //que.push(a);//入队
    //int a=que.front();//返回队头元素
    //que.pop();//出队
    //que.empty();//判断队列是否为空   1为空,0为非空
    //que.clear();//清空
    

    Copy

    二分查找模板

    int erfen(int c[],int b,int g){ int tou=0,wei=b-1; while(tou<=wei){ int mid=(tou+wei)/2; if(c[mid]>=g){ wei=mid-1; }else if(c[mid]<g){ tou=mid+1; } } if(c[tou]==g){ return tou+1; } return -1; } Copy

    快速排序模板

    #include <bits/stdc++.h> using namespace std; /* 对n个数进行排序 */ const int N=1e5+5; int a[N];//原数组 int n; void fast_sort(int left,int right){ //基本情况,递归边界 if(left>=right){ return; } //交换枢纽元,一般选中间值 int mid=(left+right)/2; //交换枢纽元和最右边的值 swap(a[mid],a[right]); int i=left,j=right-1; while(i<=j){//区间没有交错,还有元素处理 //i往右移动,直到找到比枢纽元大的数 while(a[i]<a[right]){ i++; } //j往左移动,直到找到比枢纽元小的数 while(a[j]>a[right]){ j--; } if(i<=j){ swap(a[i],a[j]); i++; j--; } } //交换枢纽元和i交换 swap(a[right],a[i]);

        //对左右区间进一步划分 
        fast_sort(left,i-1);//左 
        fast_sort(i+1,right);//右 
    }
    
    int main(){
        //先输入一个n,再输入n个数 
        cin>>n;
        for(int i=1;i<=n;i++){
            cin>>a[i];
        }
        fast_sort(1,n);
        for(int i=1;i<=n;i++){
            cout<<a[i]<<" ";
        }
        return 0;
    }
    

    Copy

    平常的编译情况:

    *1. Waiting 评测:评测请求正在等待被评测机抓取

    *2. Fetched 评测:评测请求已被评测机抓取,正在准备开始评测

    *3. Compiling 评测:正在编译中

    *4.Judging 评测:编译成功,正在评测中

    *5.Accepted 通过:程序输出完全正确

    *6. Wrong Answer 不通过:程序输出与标准答案不一致(不包括行末空格以及文件末空行)

    *7. Time Limit Exceeded 不通过:程序运行时间超过了题目限制

    *8. Memory Limit Exceeded 不通过:程序运行内存空间超过了题目限制

    *9. Runtime Error 不通过:程序运行时错误(如数组越界、被零除、运算溢出、栈溢出、无效指针等)

    *10. Compile Error 不通过:编译失败

    *11. System Error 错误:系统错误(如果您遇到此问题,请及时在讨论区进行反馈)

    *12. Canceled 其他:评测被取消

    *13. Unknown Error 其他:未知错误

    *14. Ignored 其他:被忽略

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

    __int64 在 GNU C++ 中应写成 long long 类型

    main() 返回值必须定义为 int ,而不是 void

    for 语句中的指标变量 i 将会在如"for (int i = 0...) {...}"语句之后变为无效

    itoa 不是一个通用 ANSI 函数(标准 C/C++ 中无此函数)

    printf 中使用 %lf 格式是不正确的

    限制

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

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

    编译错误

    可能有以下情况:

    递交时选错了编程语言

    Java 的主类名没有使用 "Main"

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

    一般性的编译错误

    比赛

    按照赛制不同,有不同的递交、排名规则。

    OI 赛制所有题目均以最后一次递交为准,特别地,请避免编译错误。

    OI 赛制排名规则为:总分高的排在前面,总分相等则排名相同。

    ACM/ICPC 赛制所有题目递交后立即评测,以是否通过为准。

    ACM/ICPC 赛制排名规则为:通过题目数多的排在前面,通过题目数相同的做题耗时(含罚时)少的排在前。

    乐多 赛制下,选手可以多次提交一道题目,并获得实时评测结果。

    乐多 赛制下,多次提交会导致选手的得分被扣除,排行榜将显示用户的最高得分。

    乐多 赛制下,每道题的最终得分为: s×max⁡(0.95^n,0.7)s×max(0.95n,0.7) 。s,n 分别代表本次得分和本次提交前的尝试次数。

    乐多 排名规则为:按照如上规则折算后的分数从高到低排名。

    IOI(严格) 赛制下,不同于IOI赛制,排行榜将被关闭至比赛结束。

    IOI(严格) 赛制下,每道题的排行榜得分将为用户每个子任务在所有提交中的最大得分的和。

    时间与空间限制以题目说明为准,默认限制参见 限制 通过率

    通过率的影响极其恶劣,XMW OJ 不提供也不承认通过率。

    RP 算法

    RP 可由题目,活动,比赛等获得。

  • 通过的题目

  • 最近活动

题目标签

初窥门径
76
略有小成
44
分支结构
38
顺序结构
30
循环结构
24
驾轻就熟
19
字符串
12
递推
9
二维数组
8
结构体
8
一维数组
6
递归
6
排序
5
其他
4
融会贯通
4
4
while循环
3
循环嵌套
3
搜索
3
枚举
3