11月30日考试反思

来源:互联网 发布:python 日记本 编辑:程序博客网 时间:2024/04/30 04:10

本大周学习了字符串,还进行了考试。考试题共四道,对大佬来说算简单的。

 第一题大意:告诉你牛的身高、只数和衣服长度,问两头牛有几种搭配。这道题一看实际不难,我就顺着思路打了程序,主程序如下:

{

    int n,s,a[20001],sum=0;

    cin>>n>>s;

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

    cin>>a[i];

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

    {

        for(int j=i+1;j<n;j++)//枚举所有情况

        if(a[i]+a[j]<=s)

        sum++;

    }

    cout<<sum<<endl;

    return 0;

}

  敲好后,总觉得不会那么水,才发现数据会爆掉,可是没法加break,又怕时间不够,便跳下一题,后来,竟给我想通了,在最后2分钟,把“for(intj=i+1;j<n;j++)”改成“int j=0;j++;”提交后,只对了一个数据,才发现原来是对的,j应定义等于1,便炸了,总分自然不好,想撞墙,便做了一个俯卧撑。下次考试应提醒自己别被水题炸掉,仔细仔细仔细!!!

  再说第四题吧!这是我为一AC掉的题目。题目大意:把首字母为元音子母的单词后加“cow”,其他将首字母移至末尾,加“ow”。因为刚学过字符串,模拟一下,所以AC了。主程序如下:

{

    string a[101],m;

    int n;

    cin>>n;

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

    cin>>a[i];

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

    {

        for(int j=0;j<a[i].size;j++)

        {

            if(a[i][j]==‘a’||a[i][j]==‘e’||a[i][j]==‘i’||a[i][j]==‘o’||a[i][j]==‘u’)

            cout<<a[i]<<“cow”< <endl;

            else

            m=a[i][j];

            a[i][j]==‘ ’;

            cout<<a[i]<<m<<“ow”<<endl;

            break;

        }

    }

    return 0;

}

  敲好后,总觉得有问题,运行之后,果然有问题,输出内容前会有个空格。琢磨了半天,什么也没想出来,就算过了,竟然还AC了。

  然后在会到第2题,题目大意:开锁,有两个密码,每个3位数字,只要和对应数字相差不超过2,就可以开锁,问共有几种情况。这道题虽然一看就有思路,但仔细一看就有太多细节,简直想不到有几种可能,难点在如何验证两位数字是否相邻。看了许久,敲了20行的if语句,便跳题了。经老师分析说:用枚举,把一个求解问题变成验证问题。然后我试着用三重循环编了两个小时,总算AC了。如果我按现在的水平去复赛,首先,不可能,其次,不炸是不行的。当然,要有信心,加油!

  现在只剩最后一道题了,全程最难的一道,班上没人AC,我就连骗分也做不到。题意:给你蘑菇坐标,只能直线行走,求规定时间内最多能采几个。我实在无法把情况列全,因为我还不会这类题,样例数据还有两个,便完全放弃了。后来听老师说,只要敲过8皇后,就没问题了。如果有机会,我会把程序补上的。

  本大周还是有收获的,为了明年,还得好好学。

原创粉丝点击