orzzrt....

题意:给n个点n条边,问能形成几个无向连通图
公式:ans=Σ(k=3~n){[n^(n-k)]* (n-1)!/2(n-k)!}
推导:ans=Σ(k=3~n)(f(n,k)*h(k))
f(n,k)表示能形成的森林个数,h(k)表示能形成的环的个数
h(k)=n!/2n n!:排列的种类 n!/n:去重(123,231,312) (n!/n)/2:去重(123,321)
∴h(k)=(k-1)!/2
设g(n,k)=f(n,k)*(n-k)! (边有编号时森林的个数)
=n(n-1)n(n-2)*...*n*k
=n^(n-k)*(n-1)!/(k-1)!
∴f(n,k)=n^(n-k)*(n-1)!/[(k-1)!*(n-k)!]
∴ans=Σ(k=3~n){[n^(n-k)]* (n-1)!/2(n-k)!}
需要用到高精度

#include<iostream>
#include<algorithm>
#include<cstring>
#include<cstdio>
#include<string>
#define MAX 10010
using namespace std;
char ans[MAX],sum[MAX]; int bigchenfa(int *sum2,int *a,int *b,int lsum,int la,int lb)
{
int i,j,k ;
memset(sum2,,sizeof(sum2));
lsum=;
for(i=;i<=la;i++)
for(j=,lsum=i-;j<=lb;j++)
sum2[++lsum]+=b[j]*a[i];
for(i=;i<=lsum;i++)
if(sum2[i]>=)
{
if(sum2[lsum]>=)
lsum++;
sum2[i+]+=sum2[i] / ;
sum2[i]%= ;
}
return lsum ;
} void multiply(int ac)
{
int a[MAX]={},b[MAX]={},sum2[MAX*]={} ;
int la=,lb=,lsum=;
int i,j;
int b1=ac;
la=strlen(ans);
for(int i=,j=la-;i<=la;i++,j--) a[i]=ans[j]-'';
while(b1>)
{
b[lb]=b1%;
lb++;
b1/=;
}
lb-=;
lsum = bigchenfa(sum2,a,b,lsum,la,lb) ;
memset(ans,,sizeof(ans));
for(i=lsum,j=;i>=;i--,j++) ans[j]=sum2[i]+'';
} int sum1[MAX],ans1[MAX];
void add()
{
int lena,lenb,len;
lena=strlen(sum);
lenb=strlen(ans);
len=max(lena,lenb);
memset(sum1,,sizeof(sum1));
memset(ans1,,sizeof(ans1));
for(int i=lena-,j=;i>=;i--,j++)sum1[j]=sum[i]-'';
for(int i=lenb-,j=;i>=;i--,j++)ans1[j]=ans[i]-'';
for(int i=;i<len;i++)
{
if(sum1[i]+ans1[i]>=) sum1[i+]++;
sum1[i]=(sum1[i]+ans1[i])%;
}
if(sum1[len]!=)len++;
memset(sum,,sizeof(sum));
for(int i=len-,j=;i>=;i--,j++)
{
sum[j]=sum1[i]+'';
}
}
void divide()
{
int a[MAX]={},c[MAX]={};
int i,k,d=;
k=strlen(sum);
for(i=;i<k;i++)
a[i]=sum[k-i-] - '';
for(i=k-;i>=;i--)
{
d=d*+a[i];
c[i]=d/;
d=d%;
}
while(c[k-]==&&k>) k--;
for(i=k-;i>=;i--) cout<<c[i];
} int main()
{
int n;
cin>>n;
for(int k=;k<=n;k++)
{
memset(ans,,sizeof(ans));
ans[]='';
for(int i=;i<=n-k;i++)
{
multiply(n);
}
for(int i=n-k+;i<=n-;i++)
{
multiply(i);
}
add();
}
divide();
return ;
}

zrt中文题的更多相关文章

  1. POJ1017&&UVA311 Packets(中文题面版)

    感谢有道翻译--- Description A工厂生产的产品是用相同高度h的方形包装,尺寸为1* 1,2 * 2,3 * 3,4 * 4,5 * 5,6 6.这些产品总是以与产品高度h相同,尺寸为66 ...

  2. BestCoder Round #89 B题---Fxx and game(单调队列)

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=5945     问题描述 输入描述 输出描述 输入样例 输出样例 题意:中文题,不再赘述: 思路:  B ...

  3. 51nod1118(水题)

    题目链接: https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1118 题意: 中文题诶~ 思路: 因为机器人只能往下或者右 ...

  4. ACM: NBUT 1105 多连块拼图 - 水题 - 模拟

    NBUT 1105  多连块拼图 Time Limit:1000MS     Memory Limit:65535KB     64bit IO Format:  Practice  Appoint ...

  5. CSU 1328 近似回文词(2013湖南省程序设计竞赛A题)

    题目链接:http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1328 解题报告:中文题题意就不说了.还好数据不大,只有1000,枚举回文串的中心位置,然 ...

  6. BUAA 724 晴天小猪的神题(RMQ线段树)

    BUAA 724 晴天小猪的神题 题意:中文题,略 题目链接:http://acm.buaa.edu.cn/problem/724/ 思路:对于询问x,y是否在同一区间,可以转换成有没有存在一个区间它 ...

  7. bnuoj 4207 台风(模拟题)

    http://www.bnuoj.com/bnuoj/problem_show.php?pid=4207 [题意]:中文题,略 [题解]:模拟 [code]: #include <iostrea ...

  8. [杂题]FZU2190 非提的救赎

    中文题,题意不多说. 本来感觉很像dp 其实只要从上到下维护单调性就好了 坑是......这个oj......用cin很容易TLE...... //#include <bits/stdc++.h ...

  9. [杂题]CSUOJ1274Balls and Boxes

    题目链接 题意:中文题 题意不多赘述 值得注意的是n<m 不必考虑n==m的情况 (m是盒子个数, n是每次选取的盒子个数, 不要弄反了!) 这题一看就是同余方程 每次选取n个盒子放球 也就是说 ...

随机推荐

  1. Java三大框架之——Hibernate关联映射与级联操作

    什么是Hibernate中的关联映射? 简单来说Hibernate是ORM映射的持久层框架,全称是(Object Relational Mapping),即对象关系映射. 它将数据库中的表映射成对应的 ...

  2. 封装 用canvas绘制直线的函数--面向对象

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. 【IOS开发笔记03-视图相关】简单计算器的实现

    UIView 经过前几天的快速学习,我们初步了解的IOS开发的一些知识,中间因为拉的太急,忽略了很多基础知识点,这些知识点单独拿出来学习太过枯燥,我们在今后的项目中再逐步补齐,今天我们来学习APP视图 ...

  4. div 模拟<select>事件

    IE7 下,不能够自定义<select>/<option>的样式,所以为了方便起见,用div可以进行模拟 <!doctype html> <html> ...

  5. Java基础知识【上】(转载)

    http://blog.csdn.net/silentbalanceyh/article/details/4608272 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...

  6. 海康威视,大华,宇视 的视频监控iOS Demo

    原谅我只提供一个链接,我在这里写了两遍,最后加个链接页面卡死了,下面的demo,最好真机调试.(写博客还是在别的地方写复制到这里比较好!) 一个画面可以做,4个,9个,16个画面原理是一样的,集合到自 ...

  7. Java 性能分析工具 , 第 2 部分:Java 内置监控工具

    引言 本文为 Java 性能分析工具系列文章第二篇,第一篇:操作系统工具.在本文中将介绍如何使用 Java 内置监控工具更加深入的了解 Java 应用程序和 JVM 本身.在 JDK 中有许多内置的工 ...

  8. 梳理delegate相关概念

    一.前言 可能项目规模较小,项目中除了增删改查就只剩下业务流程,以前都没怎么弄明白的东西时间长了就越发的模糊了... 二.使用场景 MSDN:delegate 是一种可用于封装命名或匿名方法的引用类型 ...

  9. 从爬取湖北某高校hub教务系统课表浅谈Java信息抓取的实现 —— import java.*;

    原创文章与源码,如果转载请注明来源. 开发环境:Myeclipse,依赖包:apache-httpclient . Jsoup.base64 一.概述 整个系统用Java开发.我们现在要做的是类似于超 ...

  10. uploadify插件Http Error(302)错误记录(MVC)

    由于项目(asp.net MVC)需要做一个附件上传的功能,使用的是jQuery的Uploadify插件的2.1.0版本,上传文件到自己项目指定的文件夹下面.做完之后,在谷歌上测试是正确的,在火狐上报 ...