- 博客(10)
- 资源 (16)
- 收藏
- 关注
原创 pku 1631
这道题是最长上升序列。由于给出的数据量过大,不能直接使用dp的方法来去最长升序,因为这样的时间为0(n^2) 下面我们考虑如下的情况:对于第i个数来说他是否是1……i的最长上升序列的元素,就是在1……i-1中的最长上升序列最后一个值比f[i]小,那么f[i]元素就为1……i上的最长上升序列的元素。如过不存在1……i-1的最长上升序列满足上述情况时,我们不能直接认为i就1……n上的最长升序列。这是我们可以这样的假设,假设f[i]是1……n的最长生序列的元素。那么f[i]在1……n的最长升序列的位置应该在1……
2010-07-31 16:36:00 831
原创 hdu 1018
题目大意:就是给定一个数要你求出n!的位数Sample Input21020Sample Output719这道题目一开始我想算出n!但是是不行的,这里的n可以有好大范围可以将n!表示成10的次幂,即n!=10^M(10的M次方,10^2是3位M+1就代表位数)则不小于M的最小整数就是 n!的位数,对该式两边取对数,有M=log10^n!即:
2010-07-30 20:29:00 2936 3
原创 double __int64
首先先讲下:float与double类型的内存分布,精度和范围<br /> <br />内存分布:<br />C/c++的浮点数据类型有float和double两种。<br />float大小为4字节,内存中的存储方式如下:<br />符号位(1bit)指数(8bit)尾数(23bit)<br />double大小为8字节,内存中的存储方式如下:<br />符号位(1bit)指数(11bit)尾数(52bit)<br />符号位决定浮点数的正负,0正1负。<br />指数和尾数均从浮点数的二进制科学计数形式
2010-07-18 15:34:00 4901
原创 memset用法详解(转)
<br />memset用法详解(转)<br />2007-01-31 20:00<br /><memory.h> or <string.h> <br /><br /> <br />memest原型 (please type "man memset" in your shell) <br /> void *memset(void *s, int c, size_t n); <br />memset:作用是在一段内存块中填充某个给定的值,它对较大的结构体或数组进行清零操作的一种最快方法。<br />
2010-07-17 15:18:00 750
原创 hdu 1720
Problem DescriptionMany classmates said to me that A+B is must needs.<br />If you can’t AC this problem, you would invite me for night meal. ^_^<br /> <br /> InputInput may contain multiple test cases. Each case contains A and B in one line.<br />A, B are
2010-07-17 09:40:00 1370
原创 hdu 3346
<br />水题,太简单了,就是写代码,想都不用想Problem DescriptionTo Chinese people, 8 is a lucky number. Now your task is to judge if a number is lucky.<br />We say a number is lucky if it’s a multiple of 8, or the sum of digits that make up the number is a multiple of 8, or t
2010-07-17 09:37:00 1280
原创 __int64的一些用法
<br />在OJ里面经常遇到一些比较大的数,这是int已经不够用了,此时我们可以考虑用 <br />long long int和__int64<br />关于long long int的输入输出是这样的:<br />c的写法输入一个十进制的数 scanf("%ld",&a); printf("%ld",a);<br />c++的写法比较简单易记 cin>>a;cout<<a;这样就行了<br />这里贴几个大整数的题目:<br />http://acm.hdu.edu.cn/showpro
2010-07-16 11:14:00 1648
原创 hdu 1848
Problem Description任何一个大学生对菲波那契数列(Fibonacci numbers)应该都不会陌生,它是这样定义的:F(1)=1;F(2)=2;F(n)=F(n-1)+F(n-2)(n>=3);所以,1,2,3,5,8,13……就是菲波那契数列。在HDOJ上有不少相关的题目,比如1005 Fibonacci again就是曾经的浙江省赛题。今天,又一个关于Fibonacci的题目出现了,它是一个小游戏,定义如下:1、 这是一个二人游戏;2、 一共有3堆石子,数量分别是m, n, p个
2010-07-15 20:26:00 1791
原创 pku 2975解题报告
http://acm.pku.edu.cn/JudgeOnline/problem?id=2975题目意思大概是这样的:就是有N堆石子,每人至少取一个在一堆里不能同时在两堆里面同时取,要你求出第一个人赢的方案。#includeusing namespace std;int main(){ int T,i,flag,s,a[1005]; while(cin>>T,T) { s=0; flag=0; for(i=0;i { cin>>a[i]; s^=a[i
2010-07-14 17:45:00 890 1
原创 hdu 2516解题报告
<br />#include<iostream><br />using namespace std;<br />int main()<br />{<br /> int n,i,k;<br /> long long int a[66]={3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,<br /> 46368,75025,121393,196418,317811,514229,832
2010-07-14 11:52:00 880
数据库的建立和维护实验
2011-11-30
实验四 视图、数据控制
2011-11-30
实验一 数据定义与简单查询实验
2011-11-30
DSDemo 数据结构
2011-06-21
Turbo C 2.0、Borland C++库函数及用例!
2011-06-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人