山东省第二届ACM大学生程序设计竞赛 D

组合数:

AC代码:

#include <iostream>
#include <cstdio>
#include <cstring>

using namespace std;

int c[1010][1010];

int main()
{
    int t, n, k;
    for(int i = 0; i < 1001; i++)
        c[i][0] = 1;
    for(int i = 1; i < 1001; i++)
    {
        for(int j = 1; j < 1001; j++)
        {
            c[i][j] = (c[i - 1][j - 1] + c[i - 1][j]) % 10000003;
        }
    }
    scanf("%d", &t);
    while(t--)
    {
        scanf("%d%d", &n, &k);
        printf("%d\n", c[n][k]);
    }
    return 0;
}

/**************************************
    Problem id    : SDUT OJ D
    User name    : xam140325乔璐
    Result        : Accepted
    Take Memory    : 4464K
    Take Time    : 20MS
    Submit Time    : 2016-05-02 15:01:57
**************************************/
时间: 2024-10-13 22:50:50

山东省第二届ACM大学生程序设计竞赛 D的相关文章

[2011山东省第二届ACM大学生程序设计竞赛]——Identifiers

Identifiers Time Limit: 1000MS Memory limit: 65536K 题目:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2163 题目描写叙述 Identifier is an important concept in the C programming language. Identifiers provide names for several language

山东省第二届ACM大学生程序设计竞赛 Crack Mathmen

题意: 有一个解码规则: 字母或者数字的ASCII码,然后平方,%997,得出一个数字,如果这个数字不够三位数的话,在前面加上0凑够它,从而得到了一个数字. 现在我们要做的就是把他给出的一串数字解码,解出他的信息. 先把数字和字母对应的数字解出来,如果有相同的话,对号入座. AC代码: #include <iostream> #include <cstdio> #include <cstring> #include <map> #define mod 997

山东省第一届ACM大学生程序设计竞赛(原题) 回顾 4.18

Phone Number 题目链接:http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2151&cid=1172 题意很简单:给出N行电话号码,寻找有没有一串是另一串的前缀,有的话输出No,当然两个一样的也是No 题解:没有前缀0,直接用二维数组存,大循环就行了,用strcmp比较相等.不会超时. Hello World!     题目链接:http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=215

sdut 2153 Clockwise (2010年山东省第一届ACM大学生程序设计竞赛)

题目大意: n个点,第i个点和第i+1个点可以构成向量,问最少删除多少个点可以让构成的向量顺时针旋转或者逆时针旋转. 分析: dp很好想,dp[j][i]表示以向量ji(第j个点到第i个点构成的向量)为终点的最大顺时针/逆时针向量数.状态转移方程为 dp[j][i] = max{dp[k][j]+1}. 问题个关键是如何判断2个向量是顺时针还是逆时针. 计算几何用的知识是求叉积和点积,叉积的作用是判断两个向量的左右(顺逆),点积的作用是判断两个向量的前后.举个例子,假设有2个向量v1,v2,‘*

2010年山东省第一届ACM大学生程序设计竞赛 Balloons (BFS)

题意 : 找联通块的个数,Saya定义两个相连是 |xa-xb| + |ya-yb| ≤ 1 ,但是Kudo定义的相连是 |xa-xb|≤1 并且 |ya-yb|≤1.输出按照两种方式数的联通块的各数.思路 : 按照第一种定义方式就只能是上下左右四个位置,而第二种则是周围那8个都是相连的. 1 #include <iostream> 2 #include <stdio.h> 3 #include <stdlib.h> 4 #include <queue> 5

sdut 2159 Ivan comes again!(2010年山东省第一届ACM大学生程序设计竞赛) 线段树+离散

先看看上一个题: 题目大意是: 矩阵中有N个被标记的元素,然后针对每一个被标记的元素e(x,y),你要在所有被标记的元素中找到一个元素E(X,Y),使得X>x并且Y>y,如果存在多个满足条件的元素,先比较X,选择X最小的那个,如果还是有很多满足条件的元素,再比较Y,选择Y最小的元素,如果不存在就输出两个-1: 分析: 直接暴力就行了 这个题目大意: 这个题是上个题的坚强版,每次会增加或减少一个点,仍然找到一个元素E(X,Y),使得X>x并且Y>y: 最多有200000次操作,每次只

【总结】2018年山东省第九届ACM大学生程序设计竞赛

省赛刚结束,还是来总结一下吧 总的来说,这场省赛的表示实在是不能令人满意啊,自己还是太弱了呀. 首先,在开场之前,我们先看了一下十道题的题目,然后通过题目含义大概猜测了一下每道题的难度,并根据这个分配了一下读题(刚看到G.Game下意识认为是博弈论) 开题我和大佬负责读A因为感觉A题可做,五分钟后,按例刷一下榜看有人做出了C题,我们就分出一个人读C,我接着读A. 另外两个队友讨论了一下情况,就一人主打一人看代码,C题顺利AC. 然后我和他们讲了一下A题题意,自己还是菜呀,当时只想到了一种暴力的解

[简单思维题]Sequence(山东省第九届ACM大学生程序设计竞赛E题)

Problem Description We define an element a_iai? in a sequence "good", if and only if there exists a j(1\le j < i)j(1≤j<i) such that a_j < a_iaj?<ai?.Given a permutation pp of integers from 11 to nn. Remove an element from the permuta

[2012山东省第三届ACM大学生程序设计竞赛]——Fruit Ninja II

Fruit Ninja II 题目:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2416 Time Limit: 5000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 Have you ever played a popular game named "Fruit Ninja"? Fruit Ninja (known as Fruit Ninja