摘要: 数学题:(组合数学,分解质因子)题意就是C(m,n)/C(s,t),凡是组合数就提醒我们要注意数据范围,一般处理组合数学问题的策略就是能约分的先约分,能化简的先化简,能除的先除,不要全部乘起来再除掉1.转化公式C(m,n) = [m*(m-1)*(m-2)...(m-n+1) ] / [ n!]2.两者相除C(p,q)/C(r,s) = [ p*(p-1)...(p-q+1) * s!] / [ r*(r-1)....(r-s+1)*q!]但是不能全部乘起来再除(爆),也不能一边乘一边除(精度),把每个数字分解质因子,分子中分解出来的质因子,个数增加,分母分解出来的质因子,个数减少最后查看所有 阅读全文
posted @ 2013-02-04 21:53 Titanium 阅读(853) 评论(0) 推荐(0) 编辑
摘要: 数学题(概率,精度)题意:n个人丢骰子,丢到某个点数为赢然后结束,从第1个人开始丢然后依次下去,然后循环回来,直到有人赢为止。输入n个赢,每个人丢到目标点数的概率,第m个人,求第m个人赢的概率算出在第一轮中第m个人赢的概率q1算出第2轮中第m个人赢的概率q2……………………算出第k轮中第m个人赢的概率qkans=q1+q2+q3+q4……+qk其中要设置一个精度qk<E , E的精度随便搞一个都差不多了#include <cstdio>const double E=1e-10;int main(){ int T,n,m,c; double p,ans,t,q; scanf(& 阅读全文
posted @ 2013-02-04 19:35 Titanium 阅读(853) 评论(0) 推荐(0) 编辑
摘要: 数学题(字符串的解码与编码,涉及组合数学)题意:给你一个字符串,它们的全排列中有一些字符将会是回文串,单独把这个些回文串拿出来,按字典序给他们从1开始编号。然后输入数字n,把第n个回文串输出。这题第一次看完全不会放下几天,今天再看瞬间想通。首先这题要从回文串的性质分析:一个回文串如果长度为偶数,那么可以确定,每种字符的个数一个是偶数,不会有字符的个数为奇数。如果一个回文串为奇数,那么可以确定,一定有且仅有一种字符的个数为奇数,其他字符的个数都会偶数,而且整个回文串中间的那个字符必定是为奇数的那个字符。所以对于长度为奇数的回文串,我们可以暂时除掉中间的那个字符(因为它是固定一定要在那里,没什么研 阅读全文
posted @ 2013-02-04 11:53 Titanium 阅读(349) 评论(0) 推荐(0) 编辑