1.

GZS的三角形

发布时间: 2015年9月6日 15:18   最后更新: 2016年6月26日 12:10   时间限制: 1000ms   内存限制: 256M

描述

机智无比的G神今天完成了一天的任务,实在是无聊的紧,拿起一支笔在纸上画起了三角形,边长为1, 2, 3,.........

即使是无聊到这种程度,G神发达的大脑也在不停的思考,从顶部的点到沿着所画出的边到达底边的方案有多少种呢。

结果可能比较大, 结果对1000003取余。

例如,边长为2的情况如下所示:

输入

第一行有一个整数 T (1 <= T <= 1000) ,是三角形的个数。
接下来T行,每行一个整数 N (1 <= N <= 10^18),代表三角形边长。

输出

输出T行,每行代表方案数,结果对1000003取余。

样例输入1 复制

3
1
2
3
样例输出1

2
8
48

规律如上:可以得到第n行即边长为n的ans[n] = 2 * ans[n-1] + (n-1) * 2*ans[n-1] = 2 * n * ans[n-1]。

但是直接这么做时间会爆,当 n >= 1000003时,对 1000003取余之后都为0。

  1. #include <iostream>
  2. #include <cstdio>
  3. #define M 1000003
  4. #define LL long long
  5. using namespace std;
  6. LL ans[M+5];
  7. int main(){
  8. int t, i;
  9. LL n;
  10. ans[1] = 2;
  11. for(i = 2; i < M; ++i)
  12. ans[i] = 2*i*ans[i-1] % M;
  13. cin >> t;
  14. while(t--){
  15. scanf("%lld", &n);
  16. if(n >= M){
  17. printf("0\n");
  18. continue;
  19. }
  20. printf("%lld\n", ans[n]);
  21. }
  22. return 0;
  23. }

2.

棋盘里的数学

发布时间: 2016年9月13日 20:39   最后更新: 2016年9月20日 12:04   时间限制: 1000ms   内存限制: 128M

描述

lhcoder有一个n行m列的棋盘,有一颗棋子从左上角(1,1)开始移动,每次只能往右或者往下移动一格,到右下角(n,m)一共有多少移动方案?

输入

有多组测试数据,每组测试数据中有两个整数n和m(2 <= n, m <= 1000),代表为n行m列的棋盘。

输出

一个整数p,代表从左上角(1,1)移动到右下角(n,m)的方案数,由于方案数可能比较大,结果请对99991取模。

样例输入1 复制

2 2
样例输出1

2
样例输入2 复制

2 3
样例输出2

3

规律如下:当x = 1或y = 1时,该ans = 1;除此之外,(x, y)的ans = (x-1, y)的ans + (x, y-1)的ans。

  1. #include <iostream>
  2. #include <cstdio>
  3. #define M 99991
  4. #define LL long long
  5. using namespace std;
  6. LL a[1005][1005];
  7. LL doo(int x, int y){
  8. if(a[x][y] != 0) return a[x][y];
  9. if(x == 1 || y == 1) return a[x][y] = 1;
  10. else return a[x][y] = (doo(x-1, y) + doo(x, y-1)) % M;
  11. }
  12. int main(){
  13. int n, m;
  14. a[1][2] = a[2][1] = 1;
  15. while(~scanf("%d %d", &n, &m)){
  16. printf("%lld\n", doo(n, m));
  17. }
  18. return 0;
  19. }

QDUoj GZS的三角形 棋盘里的数学 思维+杨辉三角的更多相关文章

  1. 【考试记录】4.8 Table ( 数论数学 --组合数 & 杨辉三角)

    陆陆续续的开始考很多的试,也会更新这些题目记录下来,免得做完了之后毫无印象,就这么水过去了(以前的考试都是如此,哎……) Table (T1) : 样例: 出于对数学题本能的恐惧考场上放弃了此题专攻T ...

  2. python3练习-杨辉三角/帕斯卡三角形

    杨辉三角形式如下: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 # 期待输出: # [1] # [1, 1] # [1, 2, 1] # [1, 3, 3, ...

  3. PJ考试可能会用到的数学思维题选讲-自学教程-自学笔记

    PJ考试可能会用到的数学思维题选讲 by Pleiades_Antares 是学弟学妹的讲义--然后一部分题目是我弄的一部分来源于洛谷用户@ 普及组的一些数学思维题,所以可能有点菜咯别怪我 OI中的数 ...

  4. 程序设计中的数学思维函数总结(代码以C#为例)

    最近以C#为例,学习了程序设计基础,其中涉及到一些数学思维,我们可以巧妙的将这些逻辑问题转换为代码,交给计算机运算. 现将经常会使用到的基础函数做一总结,供大家分享.自己备用. 1.判断一个数是否为奇 ...

  5. UVa10025 The ? 1 ? 2 ? ... ? n = k problem 数学思维+规律

    UVa10025 ? 1 ? 2 ? ... ? n = k problem The problem Given the following formula, one can set operator ...

  6. B. Tell Your World(几何数学 + 思维)

    B. Tell Your World time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  7. 例题:for循环迭代法。一个棋盘有n个格子,第一个格子有一粒米,第二个格子有两粒米,第三个格子有四粒米,依次类推,第n个格子里有多少粒米,棋盘里一共有多少粒米。

    decimal a = 1;//定义初始值,decimal可以定义比较长的数值            decimal sum = 1;            Console.WriteLine(&qu ...

  8. codeforces#253 D - Andrey and Problem里的数学知识

    这道题是这种,给主人公一堆事件的成功概率,他仅仅想恰好成功一件. 于是,问题来了,他要选择哪些事件去做,才干使他的想法实现的概率最大. 我的第一个想法是枚举,枚举的话我想到用dfs,但是认为太麻烦. ...

  9. ZOJ Problem Set - 3593 拓展欧几里得 数学

    ZOJ Problem Set - 3593 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3593 One Person ...

随机推荐

  1. Django框架学习——python模拟Django框架(转载)

    原贴来源 http://wiki.woodpecker.org.cn/moin/ObpLovelyPython/AbtWebModules python实现web服务器 web开发首先要有web服务器 ...

  2. javascript和c#的深度拷贝的一种通用方法

    很简单,序列化后反序列化...

  3. 【BZOJ2339】[HNOI2011]卡农 组合数+容斥

    [BZOJ2339][HNOI2011]卡农 题解:虽然集合具有无序性,但是为了方便,我们先考虑有序的情况,最后将答案除以m!即可. 考虑DP.如果我们已经知道了前m-1个集合,那么第m个集合已经是确 ...

  4. AAC包增加ADTS头Without MediaCodec

    AAC原始码流无法直接播放,一般需要封装为ADTS格式才能再次使用,本博主在android中用MediaCodec编码得到的AAC就是raw格式,为了保存为.aac格式,需要增加adts头,这样就可以 ...

  5. ElasticSearch(十二)批量查询mget

    1.批量查询的好处 就是一条一条的查询,比如说要查询100条数据,那么就要发送100次网络请求,这个开销还是很大的如果进行批量查询的话,查询100条数据,就只要发送1次网络请求,网络请求的性能开销缩减 ...

  6. svn提交异常file is scheduled for addition, but is missing

    svn提交错误file is scheduled for addition, but is missing svn ci -m "" svn: E155010: Commit fa ...

  7. Virtualbox虚拟机安装RouterOS

    一,下载 vdi文件https://mikrotik.com/download Cloud Hosted Routerhttps://download.mikrotik.com/routeros/6. ...

  8. iTerm2常用的快捷键

    iTerm2 是 Mac 上面一款优秀的终端软件,配合 Oh My Zsh 一起使用,整个终端的体验会变得异常流畅和舒服.iTerm2 的颜值也是非常的高的,完全可以说秒杀 Mac 自带的终端软件.既 ...

  9. ubuntu 12.04安装alsa-lib、alsa-utils【转】

    1. alsa-lib ./configure sudo make install 注意:默认是安装到/usr/这个目录下面,但是我测试多了多次,安装了alsa-lib之后,系统就没有声音了,也没有找 ...

  10. webrtc 学习资源 http://www.cnblogs.com/lingyunhu/p/3578218.html

    Realtime/Working WebRTC Experiments It is a repository of uniquely experimented WebRTC demos; writte ...