OIer-code004的博客 http://blog.okbase.net/code004 CPP String 库 http://blog.okbase.net/code004/archive/56544.html code004 2018/2/7 10:49:07 复制字符串:

memcpy 复制内存块

memmove 移动内存块

strcpy 复制字符串

strncpy 从字符串复制字符

连接字符串:

strcat 连接字符串

strncat 从字符串追加字符

比较字符串:

memcmp 比较两块内存

strcmp 比较两个字符串

strcoll 使用语言环境比较两个字符串

strncmp 比较两个字符串的字符

strxfrm 使用语言环境转换字符串

搜索字符串:

memchr 查找内存块中的字符

strchr 找到字符串中第一个出现的字符

strcspn 获取跨度,直到字符串中的字符

strpbrk 查找字符串中的字符

strrchr 找到字符串中最后一个出现的字符

strspn 在字符串中获取字符集的范围

strstr 找到子字符串

strtok 将字符串拆分为令牌

其他:

memset 填充内存块(功能)

strerror 获取指向错误消息的指针字符串(函数)

strlen 获取字符串长度(功能)

宏:

NULL 空指针(宏)

类型:

size\_t 无符号整型(类型)

]]>
洛谷题解-P1305 新二叉树 http://blog.okbase.net/code004/archive/56543.html code004 2018/2/7 10:40:25 先读入,再用dfs来一步一步判定,一步一步走。

注意:读入用long long,不用int!(不然会爆!)

每一步走一下即可

代码如下:

    #include <bits/stdc++.h>
    using namespace std;
    string a[10001];
    long long n;
    void dfs(char x)
    {
        printf("%c",x);
        for(long long i=1;i<=n;i++)
        {
            if(a[i][0]==x)
            {
                break;
            }
        }
        for(long long j=1;j<3;j++)
        {
            if(a[i][j]!='*')
            {
                dfs(a[i][j]);
            }
        }
    }
    int main()
    {
        scanf("%lld",&n);
        for(long long i=1;i<=n;i++)
        {
            scanf("%s",a);
        }
        dfs(a[1][0]);
        return 0;
    }
]]>
洛谷题解-U17893 好玩的游戏 http://blog.okbase.net/code004/archive/56542.html code004 2018/2/7 10:38:20 题目太简单,不上代码了。

先判断n的范围,越界输出ERROR

没越界就用2147483647+n就行

注意用long long,不然会爆掉

]]>