您的位置:首页 > 编程语言 > C语言/C++

[置顶] 信息学奥赛一本通(C++版) 第一部分 C++语言 第六章 函数

2017-10-24 21:40 661 查看
信息学奥赛一本通(C++版) 第一部分 C++语言 第六章 函数

第一节 函数

//1150 求正整数2和n之间的完全数

#include <stdio.h>

int f(int n){

    int i,sum=0;

    for(i=1;i<n;i++)

        if(n%i==0)sum+=i;

    return sum;

}

int main(){

    int n,i;

    scanf("%d",&n);

    for(i=2;i<=n;i++)

        if(i==f(i))

            printf("%d\n",i);

    return 0;

}

//1151 素数个数

#include <stdio.h>

int isPrime(int a){//判断质数

    int i;

    if(a<2)return 0;

    if(a==2)return 1;

    for(i=2;i*i<=a;i++)

        if(a%i==0)return 0;

    return 1;

}

int main(){

    int n,i,cnt=0;

    scanf("%d",&n);

    for(i=2;i<=n;i++)

        if(isPrime(i))cnt++;

    printf("%d",cnt);

    return 0;

}

//1152 最大数max(x,y,z)

//提交,未通过,猜测,存在分母为0的情况,仔细读题

//再读代码,发现 竟然是 笔误,一道简单的题,漏了函数。

//补上漏掉的函数,提交AC

#include <stdio.h>

int max(int a,int b){

    return a>b?a:b;

}

int main(){

    int a,b,c;

    scanf("%d%d%d",&a,&b,&c);

    printf("%.3lf",max(max(a,b),c)*1.0/max(max(a+b,b),c)/max(max(a,b),b+c));// 此处写成,造成未通过printf("%.3lf",(max(a,b),c)*1.0/max(max(a+b,b),c)/max(max(a,b),b+c));

    return 0;

}

//1153 绝对素数

#include <stdio.h>

int isPrime(int n){

    int i;

    if(n<2)return 0;

    if(n==2)return 1;

    for(i=2;i*i<=n;i++)

        if(n%i==0)return 0;

    return 1;

}

int f(int n){

    int a;

    a=n%10*10;

    a+=n/10;

    return a;

}

int main(){

    int i;

    for(i=11;i<=97;i++)

        if(isPrime(i)&&isPrime(f(i)))

            printf("%d\n",i);

    return 0;

}

//1154 亲和数

#include <stdio.h>

int f(int n){

    int i,sum=0;

    for(i=1;i<n;i++)

        if(n%i==0)sum+=i;

    return sum;

}

int main(){

    int a,b;

    for(a=2;a<=999999;a++){

        b=f(a);

        if(a==f(b)&&a!=b){

            printf("%d %d",a,b);

            break;

        }

    }

    return 0;

}

//1155 回文三位数

#include <stdio.h>

int isPrime(int n){

    int i;

    if(n<2)return 0;

    if(n==2)return 1;

    for(i=2;i*i<=n;i++)

        if(n%i==0)return 0;

    return 1;

}

int isData(int n){

    int a,b;

    a=n/100,b=n%10;

    if(a==b)return 1;

    else return 0;

}

int main(){

    int i;

    for(i=100;i<=999;i++)

        if(isPrime(i)&&isData(i))

            printf("%d\n",i);

    return 0;

}

//1156 求π的值

//该题题目有误,正确公式如下:

//根据公式arctanx(x)=x-x^3 /3+x^ 5 /5-x ^7 /7+…和 π=6 arctanx(1/sqrt(3)),定义函数arctanx(x),求当最后一项小于 10^-6 时 π的值。

//知道 π的值 为3.1415926也是该题纠错的一个技巧。

//提交,未通过,将输出的%lf改成%g,提交,未通过。

//printf("%.10lf\n",6.0*f(1/sqrt(3)));//翻了原书 明白自己编写 AC 是不可能完成任务,本人写法 printf("%lf\n",6.0*f(1/sqrt(3)));

//修改,提交AC 2017-10-27 6:54

//1156 求π的值

//再次翻阅《信息学奥赛一本通(C++版)》,将书中代码敲了一遍,提交AC,据此对原来代码进行修改

//题中有一句很关键,求当最后一项小于10-6时π的值

//公布该题的测试数据:

//3.1415905109

//几点说明:原书代码 需要勘误:t=x;//此处写成 t=0.0

//http://ybt.ssoier.cn:8088常作测试数据更新的操作,即过一段时间,AC的程序变成未通过的程序

//本人遇到两例 1156 求π的值    1372 小明的账单

//以下代码为最新AC 代码 2018-1-2 21:21

#include <stdio.h>

#include <math.h>

double f(double x){

    double sum=0,a=x;

    int k=0;

    while(fabs(a/(2*k+1))>=1e-6){

        sum+=a/(2*k+1);

        k++;

        a*=x*x*(-1);

    }

    return sum;

}

int main(){

    printf("%.10lf\n",6.0*f(1/sqrt(3)));//翻了原书 明白自己编写 AC 是不可能完成任务,本人写法 printf("%lf\n",6.0*f(1/sqrt(3)));

    return 0;

}

//1157 哥德巴赫猜想

#include <stdio.h>

int isPrime(int n){

    int i;

    if(n<2)return 0;

    if(n==2)return 1;

    for(i=2;i*i<=n;i++)

        if(n%i==0)return 0;

    return 1;

}

int main(){

    int i,j,a,b;

    for(i=6;i<=100;i++)

        if(i%2==0){

            for(j=2;j<i;j++){

                a=j,b=i-j;

                if(isPrime(a)&&isPrime(b)){

                    printf("%d=%d+%d\n",i,a,b);

                    break;

                }

            }

        }

    return 0;

}

//1397 简单算术表达式求值

//读题发现 (运算符前后可能有空格)  

#include <stdio.h>

#include <string.h>

char a[100];

int b[5];

int main(){

    int len,i,k=0;//此处原是 int len,i,k;

    char cmd,c;

    while((c=getchar())!='\n')//此句无法读取空格scanf("%s",a);

        a[k++]=c;

    a[k]='\0';

    len=strlen(a);

    i=0,k=0;

    while(i<len){

        if('0'<=a[i]&&a[i]<='9'){

            b[k]=(a[i]-'0')*10+a[i+1]-'0';

            i+=2;

            k++;

        }else if(a[i]!=' '){

            cmd=a[i];

            i++;

        }else

            i++;

    }

    if(cmd=='+')printf("%d",b[0]+b[1]);

    else if(cmd=='-')printf("%d",b[0]-b[1]);

    else if(cmd=='*')printf("%d",b[0]*b[1]);

    else if(cmd=='/')printf("%d",b[0]/b[1]);

    else if(cmd='%')printf("%d",b[0]%b[1]);

}

//1398 短信计费

#include <stdio.h>

int f(int b){

    int cnt=1;

    while(b>70){

        b-=70;

        cnt++;

    }

    return cnt;

}

int main(){

    int n,i,a;

    double sum=0;

    scanf("%d",&n);

    for(i=1;i<=n;i++){

        scanf("%d",&a);

        sum+=f(a)*0.1;

    }

    printf("%.1lf",sum);

    return 0;

}

//1399 甲流病人初筛

#include <stdio.h>

#include <string.h>

struct node{

    char name[100];

    double t;

    int tag;

}p;

int main(){

    int n,i,cnt=0,tag;

    char name[100];

    double t;

    scanf("%d",&n);

    for(i=1;i<=n;i++){

        scanf("%s%lf%d",name,&t,&tag);

        if(t>=37.5&&tag==1){

            printf("%s\n",name);

            cnt++;

        }

    }

    printf("%d",cnt);

    return 0;

}

//1400 统计单词数

//题目的难度在于从字符串中解析出单词 

//提交,未通过,

//一翻,发现洛谷也有这道题,P1308 统计单词数

//网址如下:https://www.luogu.org/problem/show?pid=1308

//NOIP 2011 普及组第2题

//数据范围

//1≤ 单词长度≤10。

//1≤ 文章长度≤1,000,000。

//noip2011普及组第2题

//修改数据范围,还是未通过, 

//翻出以往编写的代码http://blog.csdn.net/mrcrack/article/details/61419446

//提交AC 

#include <stdio.h>

#include <string.h>

#include <ctype.h>

char s1[20];

char s2[1000000+10];

int main(){

    int count=0;

    char c;

    int i,j;

    int s1len,s2len;

    int flag;

    int num,k;

    scanf("%s",s1);

    

    //字符串s2读取,比较费力 

    while((c=getchar())!=EOF)

        if(c!='\r'&&c!='\n')

            s2[count++]=c;

    while(!isalpha(s2[count-1]))

        count--;

    s2[count]='\0';

    

    s1len=strlen(s1);

    s2len=strlen(s2);

    

    //s1,s2字符串,转化成小写 

    for(i=0;i<s1len;i++)

        if(isalpha(s1[i])&&s1[i]>='A'&&s1[i]<='Z')

            s1[i]='a'+s1[i]-'A';

    for(i=0;i<s2len;i++)

        if(isalpha(s2[i])&&s2[i]>='A'&&s2[i]<='Z')

            s2[i]='a'+s2[i]-'A';

    

    num=0;

    for(i=0;i<s2len;i++){

        flag=0;

        for(j=0;j<s1len;j++){

            if(s2[i+j]==s1[j])

                flag=1;

            else{

                flag=0;

                break;

            }

        }

        if(flag==1){

            if(s2[i+s1len]==' '||i+s1len==count){//i+s1len==count表示结尾

                if(i==0||s2[i-1]==' '){//开头

                    num++;

                    if(num==1)

                        k=i;

                } 

            } 

        }

    }

    if(num>0)

        printf("%d %d\n",num,k);

    else

        printf("-1\n");

    return 0;



1401 机器翻译

//http://blog.csdn.net/mrcrack/article/details/61625530

4.p1540 机器翻译

NOIP2010 提高组 复赛 translate 机器翻译

1.读题,很快弄明题意,单词不在内存中就查字典,统计查字典次数。

2.内存采用队列方式。统计进队列次数,即为查询次数。

3.程序很快编好,两个样例通过,提交20分,重新读题,发现误解题意,清空的不是第一个内存块内容,而是第一个单词内容,修改,两个样例通过,提交20分,发现,反复读题,发现内存容量用的是样例1中的3,马上修改成m,提交AC.

4.心里素质还好,此题读下来,肯定能拿100分的,所以要反复尝试,绝不能跳过,做下一道。

5.有一点要注意,队列要开1000+10。

耗时:35分钟(从拿到题目开始,其中经历两次20分,第三次AC)

附上AC代码,编译环境Dev-C++4.9.9.2

//2010 translate

#include <stdio.h>

int queue[1000+10];//队列

int main(){

    int head,tail,cur;

    int m,n,v,count;

    int i;

    scanf("%d%d",&m,&n);

    head=0;

    tail=0;

    count=0;

    for(i=0;i<n;i++){

        scanf("%d",&v);

        cur=head;//遍历队列

        while(cur!=tail){

            if(queue[cur]==v)

                break;

            cur++;

        }

        if(cur==tail){//队列中没找到

            //队列容量未到m

            if(tail-head<m){

                queue[tail]=v;

                tail++;

            }else{//队列容量已是m

                queue[tail]=v;

                tail++;

                head++;

            }

            count++;

        }else{//队列中找到

             //无需查字典,故不进行操作

        }

    }

    printf("%d\n",count);

    return 0;

}
//1402 Vigenère密码
http://blog.csdn.net/mrcrack/article/details/52303717
NOIP2012 提高组 复赛 day1 vigenere vigenere密码

1、经过《算法竞赛入门经典(第2版)》第三章 数组和字符串 的训练,此题几乎没费什么力,代码就写出了。

2、写代码过程中的一个失误是将输入读成密码,明文,输出为密文,改起来没费什么周折,只是将+改成-。

3、编译后,输出与预想的不一样,跟踪调试上花了点时间,很快就改好了。

4、输出结束后要不要回撤换行,斗争了小一会,最后决定加上,不然怎么判断是完整的一行呢。

5、经对拍对比,此题10个输入输出完全正确,100分。

 

编译环境Dev-C++4.9.9.2

附上代码:

 #include <stdio.h>

#include <string.h>

char k[100+10],m[1000+10];

int main(){

    int klen,mlen;

    int i,j;

    int pos;

    char c;

    scanf("%s%s",k,m);

    klen=strlen(k);

    mlen=strlen(m);

    for(i=0;i<mlen;i++){

        j=i%klen;

        if(k[j]>='A'&&k[j]<='Z'){//大写字母

            pos=k[j]-'A';//确定偏移位置

        }else{//小写字母

            pos=k[j]-'a';

        }

        if(m[i]>='A'&&m[i]<='Z'){//大写字母

            c='A'+(m[i]-'A'-pos+26)%26;

            printf("%c",c);

        }else{//小写字母

            c='a'+(m[i]-'a'-pos+26)%26;

            printf("%c",c);

        }

       

    }

    putchar('\n');//换行

    return 0;

}

洛谷 P1079 Vigenère 密码

//1403 素数对

#include <stdio.h>

int isPrime(int a){

    int i;

    if(a<2)return 0;

    if(a==2)return 1;

    for(i=2;i*i<=a;i++)

        if(a%i==0)return 0;

    return 1;

}

int main(){

    int n,i=2;

    scanf("%d",&n);

    while(i<=n){

        if(i+2<=n&&isPrime(i)&&isPrime(i+2))printf("%d %d\n",i,i+2);

        i++;

    }

    return 0;

}

//1404 我家的门牌号

//n a b

//(1+b)*b/2-a*3=n

//a=((1+b)*b-2*n)/6

#include <stdio.h>

int main(){

    int n,a,b;

    scanf("%d",&n);

    for(b=1;b<=n;b++){

        a=((1+b)*b-2*n)/6;

        if(0<a&&a<=b&&(1+b)*b-6*a==2*n){

            printf("%d %d",a,b);

            break;

        }

    }

    return 0;

}

//1405 质数的和与积

//和一定,两数相等时,积最大

#include <stdio.h>

#include <math.h>

int isPrime(int a){

    int i;

    if(a<2)return 0;

    if(a==2)return 1;

    for(i=2;i*i<=a;i++)

        if(a%i==0)return 0;

    return 1;

}

int main(){

    int n,i;

    scanf("%d",&n);

    for(i=n/2+1;i>=2;i--){

        if(isPrime(i)&&isPrime(n-i)){

            printf("%d",i*(n-i));

            break;

        }

    }

    return 0;

}

//1406 单词替换

//题目设计使该题比较简单。 

#include <stdio.h>

#include <string.h>

char s[210][100]; 

int main(){

    int k=0,i;

    while(scanf("%s",s[k])!=EOF)k++;

   for(i=0;i<k-2;i++)

        if(strcmp(s[i],s[k-2])==0)

            strcpy(s[i],s[k-1]);

    for(i=0;i<k-2;i++){//低级错误,此处写成 for(i=0;i<k-2;k++)查了好久 

        if(i)printf(" ");

        printf("%s",s[i]);

    }

    return 0;

}

//1407 笨小猴
http://blog.csdn.net/mrcrack/article/details/61625530
6.洛谷 p1125 笨小猴

NOIP2008 提高组 复赛 word 笨小猴

1.看完题目,是字符串操作。

2.做一个字母到整数的映射,a-0,b-1,c-2,......

3.开一个26个元素的整型数组,统计字母个数,完毕后,一次遍历,找出最大值,最小值。

4.最多次数-最小次数,对结果判定是否质数。

5.判定素数时,分三种情况讨论,0,1;2;3,4,5.....

6.代码在经历i<26时,写成了i<len,调试了3分钟。

7.样例通过后,提交AC

耗时:30分钟

难度:简单

附上AC代码,编译环境Dev-C++4.9.9.2

//2008 word 笨小猴

#include <stdio.h>

#include <string.h>

char s[100+10];

int a[26];

int main(){

    int len;

    int i,j;

    int min,max;

    int t;

    memset(a,0,sizeof(a));

    scanf("%s",s);

    len=strlen(s);

    for(i=0;i<len;i++){

        a[s[i]-'a']++;

    }

    min=999;

    max=-1;

    for(i=0;i<26;i++){//找出最小值,最大值 ,此处len,应改成26 ,查了会

        if(a[i]>0){

            if(min>a[i])

                min=a[i];

            if(max<a[i])

                max=a[i];

        }

    }

    if(min!=999&&max!=-1){//判段是否质数

        t=max-min;

        if(t<2){

            printf("No Answer\n");

            printf("0\n");

        }else if(t==2){

            printf("Lucky Word\n");

            printf("2\n");

        }else{//t>2

            for(i=2;i<t;i++)

                if(t%i==0){//非质数

                    break;

                }

            if(i==t){//质数

                printf("Lucky Word\n");

                printf("%d\n",t);

            }else{//非质数

                printf("No Answer\n");

                printf("0\n");

            }

        }

    }else{

        printf("No Answer\n");

        printf("0\n");

    }

    return 0;

}

//1408 素数回文数的个数

//题目输入有误:一个大于11小于1000的整数n。

//应改成:一个大于等于11小于1000的整数n。

#include <stdio.h>

int isPrime(int a){

    int i;

    if(a<0)return 0;

    if(a==2)return 1;

    for(i=2;i*i<=a;i++)

        if(a%i==0)return 0;

    return 1;

}

int isData(int a){

    if(1<=a&&a<=99){

        if(a/10==a%10)return 1;

        else return 0;

    }else if(100<=a&&a<=999){

        if(a/100==a%10)return 1;

        else return 0;

    }

}

int main(){

    int n,i,cnt=0;

    scanf("%d",&n);

    for(i=1;i<=n;i++)

        if(isPrime(i)&&isData(i))cnt++;

    printf("%d",cnt);

    return 0;

}

//1409 判决素数个数

#include <stdio.h>

int isPrime(int a){

    int i;

    if(a<2)return 0;

    if(a==2)return 1;

    for(i=2;i*i<=a;i++)

        if(a%i==0)return 0;

    return 1;

}

int main(){

    int i,x,y,cnt=0;

    scanf("%d%d",&x,&y);

    for(i=x;i<=y;i++)

        if(isPrime(i))cnt++;

    printf("%d",cnt);

    return 0;

}

//1410 最大质因子序列

//什么是质因子,解释如下:在数论里,某一正整数的质因子指能整除该数的质数整数。

//比较担忧判重,一看样例,顾虑消除

#include <stdio.h>

int isPrime(int a){

    int i;

    if(a<2)return 0;

    if(a==2)return 1;

    for(i=2;i*i<=a;i++)

        if(a%i==0)return 0;

    return 1;

}

int main(){

    int m,n,i,j,k=0;

    scanf("%d%d",&m,&n);

    for(i=m;i<=n;i++)

        for(j=i;j>1;j--)

            if(i%j==0&&isPrime(j)){

                if(k)printf(",");

                printf("%d",j);

                k++;

                break;

            }

    return 0;

}

//1411 区间内的真素数

//提交,未通过,读题,发现 漏了 该句 如果之间没有真素数,则输出No。

//修改,提交AC

#include <stdio.h>

int isPrime(int a){

    int i;

    if(a<2)return 0;

    if(a==2)return 1;

    for(i=2;i*i<=a;i++)

        if(a%i==0)return 0;

    return 1;

}

int f(int a){

    int b=0;

    while(a){

        b*=10;

        b+=a%10;

        a/=10;

    }

    return b;

}

int main(){

    int m,n,i,k=0;

    scanf("%d%d",&m,&n);

    for(i=m;i<=n;i++)

        if(isPrime(i)&&isPrime(f(i))){

            if(k)printf(",");

            printf("%d",i);

            k++;

        }

    if(k==0)printf("No");

    return 0;

}

//1412 二进制分类
#include <stdio.h>
int cnt_a=0,cnt_b=0;
int f(int n){//cnt_1>cnt_0 A 否则B
    int cnt_1=0,cnt_0=0;
    while(n){
        if(n%2==0)cnt_0++;
        else cnt_1++;
        n/=2;
    }
    return cnt_1>cnt_0;
}
int main(){
    int i;
    for(i=1;i<=1000;i++)
        if(f(i))cnt_a++;
        else cnt_b++;
    printf("%d %d",cnt_a,cnt_b);
    return 0;
}

//1413 确定进制

//该题有缺漏,原题来自https://vjudge.net/problem/POJ-1331

//里面提到2<=B<=16

//该题算法,统统将B进制化成10进制,比较是否相等。

//仔细再看题目,发现看走眼了,题目中有说明B(2<=B<=40) 

//http://blog.csdn.net/u012349696/article/details/36429827技巧不错,摘抄如下:

//B不一定要从2开始遍历 由r=n%k我们可以知道 r一定是要小于k的 所我们只需要找到表达式三个数所含数字中最大的那个值,B则从那个值+1开始遍历 

#include <stdio.h>

int max(int a,int b){

    return a>b?a:b;

}

int f(int a,int b){//b进制 

    int ans=0,d[10],k=0,i,f=1;

    while(a)k++,d[k]=a%10,a/=10;

    for(i=1;i<=k;i++)ans+=d[i]*f,f*=b;

    return ans;

}

int main(){

    int p,q,r,B;

    int b;

    scanf("%d%d%d",&p,&q,&r);

    b=max(max(p%10,q%10),r%10)+1;

    for(B=b;B<=40;B++){

        if(f(p,B)*f(q,B)==f(r,B)){

            printf("%d",B);

            return 0;

        }

    }

    printf("0");

    return 0;

}

2017-10-27 22:47 AC 该节内容

第二节 递归算法

//1158 求1+2+3.+...

#include <stdio.h>

int f(int n){

    if(n==1)return 1;

    return n+f(n-1);

}

int main(){

    int n;

    scanf("%d",&n);

    printf("%d",f(n));

    return 0;

}

//1159 斐波那契数列

//挺奇怪的,为什么通过,只得40分,int改成long long 还是40分

#include <stdio.h>

int f(int n){

    if(n==1)return 0;

    if(n==2)return 1;

    return f(n-1)+f(n-2);

}

int main(){

    int n;

    scanf("%d",&n);

    printf("%d",f(n));

}

//1160 倒序数

#include <stdio.h>

void print(int a){

    if(a/10==0){

        printf("%d",a%10);

        return ;

    }

    printf("%d",a%10);

    print(a/10);

}

int main(){

    int a;

    scanf("%d",&a);

    print(a);

}

//1161 转进制

//编着编着,越来越能体会到递归与栈的联系,可喜可贺。

#include <stdio.h>

int x,m;

void print(int a){

    if(a>=10)printf("%c",'A'+a-10);

    else printf("%d",a);

}

void f(int a){

    if(a==0)return;

    f(a/m);

    print(a%m);

}

int main(){

    scanf("%d%d",&x,&m);

    f(x);

}

//1162 字符串逆序

#include <stdio.h>

#include <string.h>

int len;

char s[10000];

void print(int step){

    if(step==len-1)return ;

    print(step+1);

    printf("%c",s[step]);

}

int main(){

    scanf("%s",s);

    len=strlen(s);

    print(0);

    return 0;

}

//1163 阿克曼(Ackmann)函数

//抽空,改成阅读程序写结果,手动试试

#include <stdio.h>

int akm(int m,int n){

    if(m==0)return n+1;

    if(n==0)return akm(m-1,1);

    return akm(m-1,akm(m,n-1));

}

int main(){

    int m,n;

    scanf("%d%d",&m,&n);

    printf("%d",akm(m,n));

    return 0;

}

//1164 digit函数

//提交,未通过,仔细排查,发现少了return ;

//修改,提交AC

#include <stdio.h>

void digit(int n,int k){

    if(k==1){

        printf("%d",n%10);

        return;//漏了该句导致未通过。

    }

    digit(n/10,--k);

}

int main(){

    int n,k;

    scanf("%d%d",&n,&k);

    digit(n,k);

    return 0;

}

//1165 Hermite多项式

//可以考虑将此题改成阅读程序写结果

#include <stdio.h>

double h(int n,int x){

    if(n==0)return 1.0;

    if(n==1)return 2.0*x;

    return 2.0*x*h(n-1,x)-2.0*(n-1)*h(n-2,x);

}

int main(){

    int n,x;

    scanf("%d%d",&n,&x);

    printf("%.2lf",h(n,x));

    return 0;

}

//1166 求f(x,n)

#include <stdio.h>

#include <math.h>

double f(double x,int n){

    if(n==1)return sqrt(1+x);

    return sqrt(n+f(x,n-1));

}

int main(){

    int n;

    double x;

    scanf("%lf%d",&x,&n);

    printf("%.2lf",f(x,n));

}

//1167 再求f(x,n)

//递归多少有点感觉了

#include <stdio.h>

double f(double x,int n){

    if(n==1)return x/(1+x);

    return x/(n+f(x,n-1));

}

int main(){

    int n;

    double x;

    scanf("%lf%d",&x,&n);

    printf("%.2lf",f(x,n));

    return 0;

}

2017-10-27 AC该节内容

2017-10-27 22:47 AC该章节内容

2017-10-27 22:47 AC 第一部分 C++语言 内容

2018-1-2 21:21
AC该章节内容
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐