哈哈哈,本博客的第一张,讲的就是我在中山纪念中学的一套普及组的题目。

---------------------------------------------------------------------------------------------------------------------------------    我是可爱华丽的分界线~~

【探索的奶牛】

FJ的奶牛喜欢探索农场周围的地形。一开始,所有N(1<=N<=1,000,000,000)只奶牛一起出发,但当碰到路口时,这一群牛可能会分成两部分(不能为空),每一部分都继续前进,当碰到另一个路口时,再分成两部分,如此反复下去。。。

-假设路上到处都是新的岔口,计算最终被分成多少支队伍。

第1行: 两个用空格隔开的整数:N,K(分裂时两个小组的人数差为K)。

第1行: 输出一个整数表示最终的队伍数

输入:6 2

输出:3

题解:

本题中因为每次分裂的人数是一定,所以每次分裂的人数都是一定的,然后每次只会有两个分叉口那就很简单了,只需要枚举就好了,一边是((l –m) shr 1 ),另一边就是l-((l-m)  shr 1);然后就没有然后了。。。。。

<pre name="code" class="plain">vari,j,n,m,ans:longint;
procedure dfs(l:longint);
vari,j:longint;
beginifl>=m+1 thenif(l-m) mod 2=0 thenbegininc(ans);dfs((l-m) shr 1);inc(ans);dfs(l-((l-m) shr 1));end;
end;beginreadln(n,m);dfs(n);ans:=ans shr 1+1;writeln(ans);

---------------------------------------------------------------------------------------------------------------------------------我是可爱华丽的分界线~~

【单词】

FJ想计算他的N(1<=N<=1000)只奶牛的名字的好听度,每个名字是一个长度不超过1000的英文字母组成。

他创建了一个好名字的集合,数量为M(1<=M<=100),每个好名字的长度不超过30,奶牛的名字中每包含一个好名字(“包含”不一定要求连续),那么它的好听度就加1.

所有的名字都不区分大小写,如名字“Bessie”包含“Be”、“sI”、“EE”、“Es”,但是不包含“eB”。

现在请你帮FJ计算每个奶牛名字的好听度。

输入

第1行: 2个用空格隔开的整数:N 和 M;

第2..N+1行: 第i+1为第i个奶牛的名字;

第N+2..N+M+1行:第N+i+1行为第i个好名字。

输出

第1..N行:第i个数为第i头奶牛名字的好听度。

样例输入

5 3

Bessie

Jonathan

Montgomery

Alicia

Angola

se

nGo

Ont

样例输出

1

1

2

0

1

题解

对于一个1000*100的数据,直接暴力枚举,不过要枚举好听的名字在牛的名字里有没有出现,时间复杂度1000*100*30 差不多压点过。

程序如下:

constmaxn=1000;
vars:array [0..maxn] of ansistring;s1:array [0..100] of string;i,j,n,m,o,maxo,k,ans,ii:longint;flag:boolean;hjy:ansistring;
beginreadln(n,m);fori:=1 to n dobeginreadln(s[i]);s[i]:=upcase(s[i]);end;fori:=1 to m dobeginreadln(s1[i]);s1[i]:=upcase(s1[i]);end;fori:=1 to n dobeginans:=0;forj:=1 to m dobegino:=0;for k:=1 to length(s1[j]) dobeginflag:=false;for ii:=o+1 to length(s[i]) doif s[i,ii]=s1[j,k] thenbegino:=ii;flag:=true;break;end;if flag=false then break;end;if flag=true then inc(ans);end;writeln(ans);end;
end.

---------------------------------------------------------------------------------------------------------------------------------我是可爱华丽的分界线~~

【牛车】

高速公路上有N(1<=N<=50,000)只奶牛,编号为1..N,每头牛都开着自己的车,第i头牛的车速为S_i(1<=S_i<=1,000,000)km/h,告诉公路上一共有M个车道(1<=M<=N)。

为了安全起见,每头牛都遵循以下原则:同车道前面有x头牛,牛的车速就会降低D*X(0<=D<=5,000)KM/h,当然不会降到0以下,所以车速应该max(S_i-D*X,0)。由于车距很大,所以即使后面的车比前面的车快,你也不用担心会发生碰撞。

高速公路上有一个最低限速L(1<=L<=1,000,000),凡是低于该速度的车不允许上高速,现在请你来计算一共可以多少辆车在高速公路上行驶。

输入

第1行: 4个空格隔开的整数N,M,D,L

第2..N+1行: 第i+1行描述第i头牛的起初车速。

输出

第一行: 输出一个整数表示最多可以在高速上行驶的牛车数量。

样例输入

3 1 1 5

5

7

5

样例输出

2

贪心,从小到大排序。每个车道只要可以放得下车那就放,放不下就到下一个车道,直到没有为止,有就可以加一。

vara,v:array[1..50000] of longint;n,m,d,l,i,j,ans:longint;
procedure qsort(l,r:longint);
vari,j,mid,p:longint;
begini:=l;j:=r;mid:=v[(i+j) div 2];repeatwhile v[i]<mid do inc(i);while v[j]>mid do dec(j);if i<=j thenbeginp:=v[i];v[i]:=v[j];v[j]:=p;inc(i);dec(j);end;until i>j;if l<j then qsort(l,j);if i<r then qsort(i,r);
end;
beginreadln(n,m,d,l);for i:=1 to n doreadln(v[i]);qsort(1,n);j:=0;for i:=1 to n dobegininc(j);if j>m then j:=1;v[i]:=v[i]-a[j]*d;if v[i]>=l thenbegininc(a[j]);inc(ans);endelse dec(j);end;writeln(ans);
end.

---------------------------------------------------------------------------------------------------------------------------------我是可爱华丽的分界线~~

【危险系数】

FJ在一条船上,海上有N(1<=N<=100)岛,编号为1..N,现在他的任务是按照一个给定访问次序A_1,A_2,….A_M去探索这M(2<=M<=10,000)个岛屿,已经知道任意两个岛屿之间的危险系数,让你找出一个探索序列,只需满足你的探索序列包含给定的A_1..A_M这个序列就可以(不一定要连续),使得总的危险系数最小。

输入

第1行: 两个数, N 和 M

第 2..M+1行: 第i+1行表示给定的序列中第i个岛屿A_i

第M+2..N+M+1行:每行N个整数,表示岛屿之间的危险系数,对角线上一定是0。

输出

输出满足要求的最小危险系数

样例输入

3 4

1

2

1

3

0 5 1

5 0 2

1 2 0

样例输出

7

最短路,别的不多说了,很简单的。。。。

varf:array [1..1000,1..1000] of longint;n,i,j,k,ans,m:longint;a:array [1..100000] of longint;
function max(x,y:longint):longint;beginifx>y then exit(y)else exit(x);end;
beginreadln(n,m);fori:=1 to m doread(a[i]);fori:=1 to n doforj:=1 to n doread(f[i,j]);fork:=1 to n dofori:=1 to n dofor j:=1 to n doif (i<>j) and (i<>k) and (j<>k) thenbeginf[i,j]:=max(f[i,j],f[i,k]+f[k,j]);end;fori:=1 to m-1 dobeginans:=ans+f[a[i],a[i+1]];end;writeln(ans);
end.

中山纪念中学套题(1)相关推荐

  1. 中山纪念中学集训日志

    7.31 下了一天的雨,坐了一天的车. 中山纪念中学,满目绿树朱瓦,历史感挺浓的. 想起了一年前,我兴致勃勃地看苏卿念的纪中培训日记,没想到一年后,我亲身来到了纪中. 在宿舍跟蚊帐搏斗了许久,真是剪不 ...

  2. 2019中山纪念中学夏令营-Day21[JZOJ]

    2019中山纪念中学夏令营-Day21[JZOJ] 提高组(B组模拟赛)Team_B (由于本人太弱,并没有订正完题目) (题解大部分是从官方题解文件上摘来的) 日常膜拜大神:じやゆん蒟蒻 正文部分: ...

  3. 2019中山纪念中学夏令营-Day14 图论初步【dijkstra算法求最短路】

    Dijkstra是我学会的第一个最短路算法,为什么不先去学SPFA呢?因为我在luogu上翻到了一张比较神奇的图: 关于SPFA -它死了 以及网上还有各位大佬的经验告诉我:SPFA这玩意很容易被卡. ...

  4. 【2012年中山纪念中学信息学竞赛初一选拔赛一】美丽的纪中(a)

    [2012年中山纪念中学信息学竞赛初一选拔赛一]美丽的纪中(a) (File IO): input:a.in output:a.out 时间限制: 1000 ms 空间限制: 262144 KB [题 ...

  5. 【2012年中山纪念中学信息学竞赛初一选拔赛一】纪中篮球联赛(b)

    [2012年中山纪念中学信息学竞赛初一选拔赛一]纪中篮球联赛(b) (File IO): input:b.in output:b.out 时间限制: 1000 ms 空间限制: 262144 KB [ ...

  6. 【2012年中山纪念中学信息学竞赛初一选拔赛一】纪中作业(c)

    [2012年中山纪念中学信息学竞赛初一选拔赛一]纪中作业(c) (File IO): input:c.in output:c.out 时间限制: 1000 ms 空间限制: 262144 KB [题目 ...

  7. 2019.1.23 中山纪念中学之北大教授讲座

    long long ago 早已经听闻了在我们去中山纪念中学训练的过程中,北京大学信息学冬令营会在纪中举行.我们还期望着观摩一下这些来自全国各个信息强省强校的大佬们呢. day-3 三天前的下午,一大 ...

  8. 【2012年中山纪念中学信息学竞赛初一选拔赛一】纪中游戏(d)

    [2012年中山纪念中学信息学竞赛初一选拔赛一]纪中游戏(d) (File IO): input:d.in output:d.out 时间限制: 1000 ms 空间限制: 262144 KB [题目 ...

  9. 中山纪念中学培训15天总结

    比赛 2018/7/6-纪中某C组题[jzoj1192,jzoj1397,jzoj1736] 上来就集体爆零 2018/7/7-纪中某C组题[jzoj1494,jzoj1495,jzoj1496,jz ...

最新文章

  1. 做百度推广需要投入多少费用?
  2. 雨敲窗python_雨敲窗Python:类
  3. 项目中涉及到的BAPI
  4. 使用VS2013在WIN8.1上运行gaclib的hello world
  5. leetcode 978. 最长湍流子数组(滑动窗口)
  6. Qt工作笔记-Qt之自定义属性Q_PROPERTY
  7. img绝对路径图片显示_使用python爬虫去风景图片网站批量下载图片
  8. GIT学习----第六节:撤销修改
  9. 搭载麒麟990 5G SoC 华为MatePad Pro 5G全球首发
  10. 关掉magiskhide_最新版Magisk-v20.4刷入后找不到Magisk Hide怎么办+Magisk Hide开启教程
  11. js 连mysql 延后_详解MySQL 主从同步延迟
  12. [渝粤教育] 中国地质大学 大学英语(7) 复习题
  13. 服务器内存傲腾基本参数信息,服务器傲腾内存
  14. 基于单片机的脉搏心率远程监测
  15. 按键精灵通过抓抓工具来获取坐标位置
  16. 画春天的景色计算机教案,最新《画春天》教案
  17. 数据可视化 | Tableau从入门到高手 入门联接关系数据预处理
  18. 2021年起重机械指挥考试总结及起重机械指挥考试技巧
  19. Linux在当前文件夹下打开终端
  20. 一步一步学Spring Boot(一)

热门文章

  1. Linux CentOS-8.4下载与安装
  2. python机器学习手册——学习代码(导入、处理、时间、图像、降维、sklearn模型、神经网络)
  3. 单片机课设基于51单片机的波形发生器(公开资源)(四种波形)(同时输出两种波形)
  4. 使用 Fragment 处理 onActivityResult
  5. 纯JavaScript山寨腾讯手机游戏《天天爱消除》开发过程详细
  6. MacOS 10.10 以上解决机械键盘按键无法识别
  7. linux mplayer分析,Linux系统下玩转 MPlayer
  8. 直播 | 来了!松果基金让你的科研更厉害
  9. 微信公众平台开发费用其实并不高 及微信公众平台开发简单教程
  10. 安装LabelImage