日志分类:NOIP相关

NOIP2011提高组复赛试题

时间:2011年11月14日作者:坏男孩查看次数:878 views评论次数:4

Day1:http://dl.dbank.com/c0s4ka5er9

Day2:http://dl.dbank.com/c0autp37lo

分类:NOIP相关

谎言?谬论?笑话?→→事实!

时间:2010年12月12日作者:坏男孩查看次数:1,590 views评论次数:2

前一阵子我写了文章,彻底的告别了NOIP,也说了分数线是270分,而我考了260分的悲剧。

但是这一切只是传说。。。

就在这个星期四,李老师(班主任)在上课的时候,突然接了一个电话,然后申请凝重的走了进来。大家都猜不是什么好事,准备继续上课。没想到,李老师说分数线降到200分,全国统一的分数线。额……同时也宣布班上有9个同学拿了双一等,而对手二十七中有29个双一等。。。顿时傻了眼。可能又要变政策了。。难不成两个一等奖都不保送了?

先自我欢乐一下,双一等奖啦!~~

恩,接下来就是文化课,希望再次拥有好运气。

不只是一场杯具、

时间:2010年11月21日作者:坏男孩查看次数:1,891 views评论次数:15

天生我材必有用。终究我不是搞信息学竞赛的材啊。这次NOIP2010普及组的复赛试卷只用一个字可以形容——水。不仅水而且甚水。以至于任何算法都不用就可以直接400分。只是抱怨。。。

在一场痛哭之后,静心思考下,对,这仅仅是一场游戏,玩你的游戏。去年市教育局改了政策:一等奖加20分,两个一等奖才可以保送。今年只能放手一搏,再冲一把。可是我们被玩了。一场莫名的复赛。所有算法都被出题老师无视了,考前一周的魔鬼训练一丁点用都没有,那些上课还玩游戏的都能拿一等奖。之前老师告诉我们考一等奖就只要做好前两题就OK了。结果今年告诉我分数线是270,至少做出3题才可以拿一等奖。教育局的老师还说了,今年他们集训的强度是前所未有的,只要是考试大纲之内的,都会全面的教一遍。于是开始铺天盖地地讲无数种算法。结果考试一个都没用上……

但是,这也不怪他们。我也懵了。考试的时候,我只用一个半小时就做好4题了。然后整个人开始浮躁了。唉!~怎么办呢。。我的性格就是如此,被骂了很多回,就是改不好。现在后悔也没有用了,有的只是一张“二等奖”的废纸。

浪费了三个月,这三个月的所有艰辛都白白的浪费了。所有的寄托也都成了泡影。也许大家还不明白这场考试意味着什么。我丢了三个月的文化课,班级排名跌了20名,就为了争取一个宝贵的保送名额,真觉得我错了。

昨天,教育局又发布一条令人震撼的消息,从下一届新高一开始,NOIP的保送名额不再拥有,又给我们这些信息学选手一个重磅打击。

在此,我心痛,但是我不得不对我心爱的C语言说再见,不得不对NOI说再见,不得不为我的信息学道路画上不圆满的句号。

最后,感谢父母,感谢老师,感谢大家!~

NOIP2010提高组复赛试题(Word版本)+测试数据

时间:2010年11月20日作者:坏男孩查看次数:3,564 views评论次数:0

强势推出“NOIP2010提高组复赛试题(Word版本)+测试数据”。

试题:http://u.115.com/file/f45bdbc6c5    http://dl.dbank.com/c0pobakytn
测试数据:http://u.115.com/file/f434b1f1af   http://dl.dbank.com/c0pobakytn

普及组稍等。。。

标签:,分类:C语言, NOIP相关

高精度四则运算——加法,乘法,减法

时间:2010年11月19日作者:坏男孩查看次数:1,245 views评论次数:2

高精度加减乘(没有除法。。高除单较简单,高除高几乎无用)

一、高精度加法

#include <iostream>
using namespace std;
int t[1001];
int x[1001],y[1001],i;
void Add( int c[], const int a[], const int b[] ){
     int i;
     t[0]=(a[0]>b[0]?a[0]:b[0]);
     for( i=1; i<=t[0];i++){
          t[i]+=a[i]+b[i];
          t[i+1]+=t[i]/10;
          t[i]%=10;
     }
     if( t[t[0]+1])++t[0];
     for (i=0;i<=t[0];i++)c[i]=t[i];
}
int main () {
    cin>>x[0]>>y[0];
    for (i=x[0];i>=1;i--){
        scanf ("%1d",&x[i]);
    }
    for (i=y[0];i>=1;i--){
        scanf ("%1d",&y[i]);
    }
    int z[1001];
    Add (z,x,y);
    for (i=z[0];i>=1;i--){
        cout<<z[i];
    }
    system ("pause");
    return 0;
}

二、高精度乘法

#include <iostream>
using namespace std;
int t[1001];
int x[1001],y[1001],i;
void Mul(int c[],const int a[],const int b[] ){
     int i, j;
     for( i=1; i<=a[0]; ++i )
     for( j=1; j<=b[0]; ++j ){
          t[i+j-1]+=a[i]*b[j];
          t[i+j]+=t[i+j-1]/10;
          t[i+j-1]%=10;
     }
     t[0]= a[0]+b[0];
     while((t[t[0]]==0)&&(t[0]>1))--t[0];
     for (i=0;i<=t[0];i++)c[i]=t[i];
     return;
}
int main () {
    cin>>x[0]>>y[0];
    for (i=x[0];i>=1;i--){
        scanf ("%1d",&x[i]);
    }
    for (i=y[0];i>=1;i--){
        scanf ("%1d",&y[i]);
    }
    int z[1001];
    Mul (z,x,y);
    for (i=z[0];i>=1;i--){
        cout<<z[i];
    }
    system ("pause");
    return 0;
}

三、高精度减法

#include <iostream>
using namespace std;
int t[1001];
int x[1001],y[1001],i;
int  CompareNum( const int a[], const int b[] ){
     if( a[0] > b[0] ) return 1;
     if( a[0] < b[0] ) return -1;
     for( int i=a[0]; i>0; --i ){
          if( a[i] > b[i] ) return 1;
          if( a[i] < b[i] ) return -1;
     }
     return 0;
}
void Sub( int c[], const int a[], const int b[] ){
     int i;
     if( CompareNum( a, b ) == -1 ){
         for( i=1; i<=b[0]; ++i ){
              t[i] += b[i] - a[i];
              if( t[i]<0 ){
                  t[i] += 10;
                  --t[i+1];
              }
         }
     }
     else{
         for( i=1; i<=a[0]; ++i ){
              t[i] += a[i] - b[i];
              if( t[i] < 0 ){
                  t[i] += 10;
                  --t[i+1];
              }
         }
     }
     while( (t[i]==0) && (i>1) ) --i;
     t[0] = i;
     for (i=0;i<=t[0];i++)c[i]=t[i];
     return;
}
int main () {
    cin>>x[0]>>y[0];
    for (i=x[0];i>=1;i--){
        scanf ("%1d",&x[i]);
    }
    for (i=y[0];i>=1;i--){
        scanf ("%1d",&y[i]);
    }
    int z[1001];
    Sub (z,x,y);
    for (i=z[0];i>=1;i--){
        cout<<z[i];
    }
    system ("pause");
    return 0;
}

标签:分类:C语言, NOIP相关

六套经典动态规划试题

时间:2010年11月12日作者:坏男孩查看次数:2,582 views评论次数:3

动态规划是运筹学的一个分支,是求解决策过程最优化的数学方法。20世纪50年代初美国数学家R.E.Bellman等人在研究多阶段决策过程的优化问题时,提出了著名的最优化原理,把多阶段过程转化为一系列单阶段问题,利用各阶段之间的关系,逐个求解,创立了解决这类过程优化问题的新方法——动态规划。动态规划是信息学竞赛中选手必须熟练掌握的一种算法,他以其多元性广受出题者的喜爱。动态规划首次进入信息学奥赛是在IOI94(数字三角形),在国内首次出现是在NOI95。此后动态规划成为信息学奥赛的必考算法之一。

今天,动态规划已经成为NOIP选手必备算法之一。此六套试题可供赛前复习用,题目比较简单,但是想要轻松做好每一题并不容易。。。从简单入手,从概念入手,才能更进一步!

下载地址:

本站网盘:http://www.huaiboy.com/other/box-web-disk/          中的“动态规划经典试题.rar”
115网盘:
http://u.115.com/file/f4832207e8          动态规划经典试题.rar

希望大家可以在第15届NOIP中取得优异成绩!~

标签:,分类:C语言, NOIP相关

NOIP2010普及组答案 & 考后感

时间:2010年10月16日作者:坏男孩查看次数:3,093 views评论次数:6

今年安徽省NOIP分数线:76.5分

CCF NOIP2010普及组(C语言)参考答案与评分标准

一、单项选择题(共20题,每题1.5分,共计30分)
1 2 3 4 5 6 7 8 9 10
D A A D A D B D C B
11 12 13 14 15 16 17 18 19 20
D B B B B A A D C D
二、问题求解(共2题,每题5分,共计10分)
1.2-2-1-2-3-1-1-3-4-3-1-2-1-3-5-3-6(或22123113431213536)
2.49
三、阅读程序写结果(共4题,每题8分,其中第4题(1)、(2)各4分,共计32分)1.2 20 77 91
2.99 101 111
3.120 112
4.(1)1
(2)4
四、完善程序(前4空,每空2.5分,后6空,每空3分,共计28分)
(说明:以下各程序填空可能还有一些等价的写法,各省可请本省专家审定和上机验证,不一定上报科学委员会审查)
1.① tmp = 1
 ② p[j]
 ③ p[r] = i
 ④ p[j] + p[k](或p[k] + p[j])
 ⑤ 1004
2.① num <= 2(或num < 3 或num == 2)
 ② go(LEFT_TO_RIGHT)
 ③ pos[i] == LEFT(或LEFT == pos[i])
 ④ time[i] + go(RIGHT_TO_LEFT)(或go(RIGHT_TO_LEFT) + time[i])
 ⑤ pos[i] = LEFT
本小题中,LEFT可用1代替,LEFT_TO_RIGHT可用1代替,RIGHT_TO_LEFT可用0代替。

这次考得还好吧,整理下:

第一大题:全对
第二大题:全对
第三大题:第4小题   第2小小题错了(一个大粗心。。。扣了4分)
第四大题:第一小题 全对 丨 第二小题错了两个空  (不是粗心,是真的没考虑到,扣6分)

也就是说不出意外的话在90分左右。

去年我们安徽省芜湖市分数线68分,前年分数线65分。该过了吧。准备准备复赛。。。誓死拿一等奖。

准考证号:WH267

标签:分类:NOIP相关