1.  

NOIP2008pj传球游戏

题目描述

上体育课的时候,小蛮的老师经常带着同学们一起做游戏。这次,老师带着同学们一起做传球游戏。

游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个同学可以把球传给自己左右的两个同学中的一个(左右任意),当老师在此吹哨子时,传球停止,此时,拿着球没有传出去的那个同学就是败者,要给大家表演一个节目。

聪明的小蛮提出一个有趣的问题:有多少种不同的传球方法可以使得从小蛮手里开始传的球,传了m次以后,又回到小蛮手里。两种传球方法被视作不同的方法,当且仅当这两种方法中,接到球的同学按接球顺序组成的序列是不同的。比如有三个同学1号、2号、3号,并假设小蛮为1号,球传了3次回到小蛮手里的方式有1->2->3->1和1->3->2->1,共2种。

输入输出格式

  1. 输入格式:

输入文件ball.in共一行,有两个用空格隔开的整数n,m(3<=n<=30,1<=m<=30)。

  1. 输出格式:

输出文件ball.out共一行,有一个整数,表示符合题意的方法数

输入输出样例

输入样例#1:

  1. 3 3
输出样例#1:

  1. 2

说明

40%的数据满足:3<=n<=30,1<=m<=20

100%的数据满足:3<=n<=30,1<=m<=30

2008普及组第三题

  1. -----------------------------------------
    环状递推,f[i][j]表示第i次到第j个人手里,人从0开始编号
  1. #include<iostream>
  2. #include <cstdio>
  3. #include <cstring>
  4. using namespace std;
  5. const int N=;
  6. int n,m,f[N][N];
  7. int dp(int i,int j){//printf("%d %d\n",i,j);
  8. int &ans=f[i][j];
  9. if(ans!=-) return ans;
  10. ans=dp(i-,(j-+n)%n)+dp(i-,(j+)%n);
  11. //printf("ans %d\n",ans);
  12. return ans;
  13. }
  14. int main(){
  15. cin>>n>>m;
  16. memset(f,-,sizeof(f));
  17. f[][]=;
  18. for(int j=;j<n;j++) f[][j]=;
  19. cout<<dp(m,);
  20. }
  1.  

NOIP2007统计数字

题目描述

某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*10^9)。已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。

输入输出格式

输入格式:

输入文件count.in包含n+1行;

第一行是整数n,表示自然数的个数;

第2~n+1每行一个自然数。

输出格式:

输出文件count.out包含m行(m为n个自然数中不相同数的个数),按照自然数从小到大的顺序输出。每行输出两个整数,分别是自然数和该数出现的次数,其间用一个空格隔开。

输入输出样例

输入样例#1:

  1. 8
  2. 2
  3. 4
  4. 2
  5. 4
  6. 5
  7. 100
  8. 2
  9. 100
输出样例#1:

  1. 2 3
  2. 4 2
  3. 5 1
  4. 100 2

说明

40%的数据满足:1<=n<=1000

80%的数据满足:1<=n<=50000

100%的数据满足:1<=n<=200000,每个数均不超过1500 000 000(1.5*109)

NOIP 2007 提高第一题

----------------------------------------------------------------------

map轻松水果

  1. #include<iostream>
  2. #include<cstdio>
  3. #include<cstring>
  4. #include<algorithm>
  5. #include<map>
  6. using namespace std;
  7. inline int read(){
  8. int x=,f=;char ch=getchar();
  9. while(ch<''||ch>''){if(ch=='-')f=-;ch=getchar();}
  10. while(ch>=''&&ch<=''){x=x*+ch-'';ch=getchar();}
  11. return x*f;
  12. }
  13. int n,a;
  14. map<int,int> mp;
  15. int main(){
  16. n=read();
  17. for(int i=;i<=n;i++){
  18. a=read();
  19. mp[a]++;
  20. }
  21. map<int,int>::iterator it;
  22. for(it=mp.begin();it!=mp.end();it++){
  23. printf("%d %d\n",it->first,it->second);
  24. }
  25. }

NOIP2013转圈游戏

题目描述

n 个小伙伴(编号从 0 到 n-1)围坐一圈玩游戏。按照顺时针方向给 n 个位置编号,从0 到 n-1。最初,第 0 号小伙伴在第 0 号位置,第 1 号小伙伴在第 1 号位置,……,依此类推。游戏规则如下:每一轮第 0 号位置上的小伙伴顺时针走到第 m 号位置,第 1 号位置小伙伴走到第 m+1 号位置,……,依此类推,第n − m号位置上的小伙伴走到第 0 号位置,第n-m+1 号位置上的小伙伴走到第 1 号位置,……,第 n-1 号位置上的小伙伴顺时针走到第m-1 号位置。

现在,一共进行了 10^k轮,请问 x 号小伙伴最后走到了第几号位置。

输入输出格式

输入格式:

输入文件名为 circle.in。

输入共 1 行,包含 4 个整数 n、m、k、x,每两个整数之间用一个空格隔开。

输出格式:

输出文件名为 circle.out。

输出共 1 行,包含 1 个整数,表示 10

k 轮后 x 号小伙伴所在的位置编号。

输入输出样例

输入样例#1:

  1. 10 3 4 5
输出样例#1:

  1. 5

说明

对于 30%的数据,0 < k < 7;

对于 80%的数据,0 < k < 10^7;

对于 100%的数据,1 <n < 1,000,000,0 < m < n,1 ≤ x ≤ n,0 < k < 10^9


裸取模快速幂

  1. //
  2. // main.cpp
  3. // noip2013d2t1
  4. //
  5. // Created by abc on 16/8/2.
  6. // Copyright © 2016年 abc. All rights reserved.
  7. //
  8.  
  9. #include <iostream>
  10. typedef long long ll;
  11. using namespace std;
  12. ll n,m,k,x;
  13.  
  14. ll powMod(ll a,ll b){
  15. ll ans=;
  16. for(;b;b>>=,a=(a*a)%n)
  17. if(b&) ans=(ans*a)%n;
  18. return ans;
  19. }
  20.  
  21. int main(int argc, const char * argv[]) {
  22. cin>>n>>m>>k>>x;
  23. cout<<(powMod(,k)*m%n+x)%n;
  24.  
  25. return ;
  26. }
  1.  

NOIP水题合集[3/未完待续]的更多相关文章

  1. USACO(含training section)水题合集[5/未完待续]

    (1) USACO2.1 Ordered Fractions 枚举 排序即可,注意1/1 #include<iostream> #include<cstdio> #includ ...

  2. DP+贪心水题合集_C++

    本文含有原创题,涉及版权利益问题,严禁转载,违者追究法律责任 本次是最后一篇免费的考试题解,以后的考试题目以及题解将会以付费的方式阅读,题目质量可以拿本次作为参考 本来半个月前就已经搞得差不多了,然后 ...

  3. FCRA题库及答案(未完待续)

    一.FCRA-入门基础(23) 1.FineReport中普通模板总共有5种不同的预览模式:分页预览.填报预览.新填报预览.数据分析.移动端预览 决策报表下为表单预览.移动端预览 2.FineRepo ...

  4. 记录一下第一次在CodeForces供题的事(未完待续)

    3月11日 因为想出题而开始打比赛上分 (Rating 1727) (期间最低掉到 1669) 6月4日凌晨 上分,有了权限 (Rating 2141) 6月4-6日 出了七道题 6月8-12日 又出 ...

  5. 关于DOM的一些总结(未完待续......)

    DOM 实例1:购物车实例(数量,小计和总计的变化) 这里主要是如何获取页面元素的节点: document.getElementById("...") cocument.query ...

  6. 我的SQL总结---未完待续

    我的SQL总结---未完待续 版权声明:本文为博主原创文章,未经博主允许不得转载. 总结: 主要的SQL 语句: 数据操作(select, insert, delete, update) 访问控制(g ...

  7. MVC丶 (未完待续······)

         希望你看了此小随 可以实现自己的MVC框架     也祝所有的程序员身体健康一切安好                                                     ...

  8. odoo11 model+Recordset 基础未完待续

    Model 一个模型代表了一个业务对象 本质上是一个类,包含了同django flask一样的数据字段 所有定义在模型中的方法都可以被模型本身的直接调用 现在编程范式有所改变,不应该直接访问模型,而是 ...

  9. Go web编程学习笔记——未完待续

    1. 1).GOPATH设置 先设置自己的GOPATH,可以在本机中运行$PATH进行查看: userdeMacBook-Pro:~ user$ $GOPATH -bash: /Users/user/ ...

随机推荐

  1. 使用Python对文档单词进行计数

    做hacker.org上面的题目时,遇到了一个题目需要对RFC3280种长度为9的单词进行计数,并找出这些单词中出现次数最多的那个:Didactic Byte RFC3280文档有7000多行,靠人工 ...

  2. Autodesk Vault: 获取授权失败

    在登录Vault Explorer时弹出对话框,获取授权失败,不能登录. 1.首先Autodesk Vault Professional采用网络版授权方式,在安装之前之前你需要首先配置网络授权服务器, ...

  3. linux heartbeat v2/v3 的一点资料

    http://linux-ha.org http://linux-ha.org/wiki/Pacemaker Heartbeat2 http://blog.taggesell.de/index.php ...

  4. Sharepoint学习笔记—习题系列--70-576习题解析 -(Q59-Q62)

    Question 59You are designing a collection of Web Parts that will be packaged into a SharePoint 2010 ...

  5. git 设置 key 到服务器,同步代码不需要输入用户名和密码

    1  ssh-keygen -t rsa 2  vim ~/.ssh/id_rsa.pub 3. 添加到git 服务器,这样同步代码就不需要输入密码

  6. RecyclerView的下拉刷新和加载更多 动画

    下拉刷新和加载更多 1.https://github.com/jianghejie/XRecyclerView 2.http://blog.csdn.net/jabony/article/detail ...

  7. Java Collection Framework概述

    文章出自:听云博客 Collection概述 Java collection是java提供的工具包,包含了常用的数据结构:集合.链表.队列.栈.数组.映射等. Java集合主要可以划分为4个部分:Li ...

  8. android app设计内容

    1.logo-main-模块页: 2.logo页包括:背景.版本号.图标.软件名.blog等内容:

  9. PHP导出数据库方法

    (1)定义一个db_dump函数如下: <?PHP function db_dump($host,$user,$pwd,$db) { $mysqlconlink = mysql_connect( ...

  10. Linux下Rsync+sersync实现数据实时同步

    inotify 的同步备份机制有着缺点,于是看了sersync同步,弥补了rsync的缺点.以下转自:http://www.osyunwei.com/archives/7447.html 前言: 一. ...