- 博客(11)
- 收藏
- 关注
原创 hdu 2048(递推错排)
#define Max 25#includedouble jie(int n){ double f=1; for(int i=2;i<=n;i++) f*=i; return f;}int n;double a[Max],k;int main(){ //freopen("input.txt","r",stdin); a[1]=0;
2014-02-24 13:05:34 1068
原创 hdu 2047
不废话,直接代码#define Max 55#include#include#includeint n;long long c[Max],k[Max],m[Max];//c,k,m分别为长度为n时方法数和非o的字符个数和字符o的个数void ans(){ k[1]=2;m[1]=1;c[1]=3; for(int i=2;i<=50;i++) {
2014-02-24 11:18:46 1031
原创 hdu 2046(递推)
n规模的格子只能从n-1和n-2得来,n-1的时候我们增加一个2×1格子,竖着放,可以有f(n-1)种放法,n-2时候我们可以增加2×2个格子,2个都横着放,可以有f(n-2)种方法。注意本题思想不错,如何从一种状态达到另一种状态,递归有时候还是很有用的。#define Max 55#include#include#includeint n;long long c[Max];i
2014-02-24 00:26:47 931
原创 hdu 2045(简单递推)
注意分类讨论,第n-1个格子和第一个格子同色时第n个格子有两种涂法,不同色就只有一种。#define Max 55#include#include#includeint n;long long c[Max];int main(){ //freopen("input.txt","r",stdin); c[1]=3;c[2]=6;c[3]=6; long lon
2014-02-23 23:45:14 821
原创 hdu 2044 (水题)
简单递推,还是wa了很多次没过,原来hdu的long long要用%I64d才能过。。。不明白,不是只比对输出的吗。。。。#define Max 55#includeint M;char s[Max];int a,b;long long c[Max];int main(){ //freopen("input.txt","r",stdin); scanf("%d\n"
2014-02-22 01:34:57 963
原创 二叉树遍历——BFS
题目见刘汝佳101,闲来无事自己敲敲,很好的模板#define maxn 300#include#include#includestruct node{ int hav;//是否访问了 int v;//结点值 node *left,*right;//左右儿子};char s[maxn];node *q[maxn];node *new_node(){
2014-02-21 14:07:55 1176
原创 hdu 2037 今年暑假不AC
实际上就是选择不相交区间,先按右端点进行排序,再分别去掉包含的区间和相交的区间,这里区间的选择采用的是贪心的策略,模板题啊啊。#include#include#includestruct s{ int l; int r; int ok;};int cmp(const void *_a,const void *_b){ s *a=(s*)_a;s
2014-02-20 13:56:56 963
原创 UVA 644 Immediate Decodability
判断前缀是否和某个字符串相同,不多说了直接上代码,uva的字符模拟终于要结束了啊啊,acm之路还很长希望自己和大家能坚持下去。#include#includechar isprefix(const char s[][12],int n)//判断前缀{ for(int i=0;i<n;i++) for(int j=i+1;j<n;j++) {
2014-02-19 18:50:42 840
原创 UVA 10815 Andy's First Dictionary
本题就是输入一些句子,找出其中所有的单词并排序,思路简单,注意去重即可。#define LOCAL#include#include#include#includeint cmp(const void *a,const void *b){ return strcmp((char*)a,(char*)b);}int find(const char word[][30],
2014-02-19 15:26:28 798
原创 UVA 10878 Decode the tape
这绝对是我去UVA以后遇见的最坑的题,完全就是靠想象力。。。这题实际上是一道水题,就是用二进制表示ascll码,但要注意点前面的是从2的3次方开始的,字母o表示1,空格表示0。有两点不太明白,第一是解码后的字符串结尾加‘\0’后居然不能ac,第二是输出的时候不能输出回车。#include#includechar find(const char *s){ int base1=
2014-02-19 01:21:59 918
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人