发博文
个人资料
如风
如风
  • 博客等级:
  • 博客积分:191
  • 博客访问:3,957
  • 关注人气:2
音乐播放器
图片播放器
评论
加载中…
留言
加载中…
访客
加载中…
好友
加载中…
博文

POJ1088 http://poj.org/problem?id=1088

Description

Michael喜欢滑雪百这并不奇怪,因为滑雪的确很刺激。可是 为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由 一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子

4 5

16 17 18 19 6

15 24 25 20 7

14 23 22 21 8

13 12 11 10 9

一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度减小。在上面的例子中,一条可滑行的滑坡为24-17-16-1。当然25-24-23-...-3-2-1更长。事实上,这是最长的一条。

 

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
FROM topcoder

 Given a list of N coins, their values (V1, V2, ... , VN), and the total sum S. Find the minimum number of coins the sum of which is S (we can use as many coins of one type as we want), or report that it's not possible to select coins in such a way that they sum up to S.

Pseudocode:

 Set Min[i] equal to Infinity for all of i 
Min[0]=0
For i = 1 to S
For j = 0 to N - 1
If (Vj<=i AND Min[i-Vj]+1<Min[i])
Then Min[i]=Min[i-Vj]+1 Output Min[S]


C++:


#include <iostream>
#include <time.h>

using namespace std;

const int N = 3;
int coins[N] = {1, 3,5};
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
(2011-03-04 07:42)
标签:

最长不降子序列

dp

it

分类: programming
原文http://www.cppblog.com/superKiki/archive/2010/08/09/122868.html
这题目是经典的DP题目,也可叫作LISLongest Increasing Subsequence)最长上升子序列或者 最长不下降子序列。很基础的题目,有两种算法,复杂度分别为O(n*logn)O(n^2)


 

一.问题描述

    设有由n个不相同的整数组成的数列,记为:

    a(1)a(2)、……、a(n)a(i)<>a(j) 

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
今天学了杨氏矩阵。非常精妙的说!于是打算写一份学习记录来记录下。(当作小论文把。。)
杨氏矩阵是一种非常牛逼的矩阵!它既可以用来当堆,又可以用平衡树的查询方法。也就是说你可以把他当作有堆性质的平衡树来用。是不是很牛逼?
[杨氏矩阵的长相]
杨氏矩阵 Young Tableau - 莫诺的学习记录[原创!] - 安静·傀儡 - OIers Tragedy
[杨氏矩阵的性质]
假 设用f[i][j]描述一个杨氏矩阵,那么f[i][j]满足f[i][j]<=f[i+1][j]&&f[i][j]& lt;=f[i][j+1]。当然也可以是f[i][j]>=f[i+1][j]&&f[i][j]>=f[i] [j+1]。简单的说就是他要比他的右边那格和下边那格要大或者小。
[杨氏矩阵的操作]
杨氏矩阵支持插入,查询,删除三种操作。可能还有更多但是我知道的只有这三种。
[杨氏矩阵的插入
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
(2011-03-03 01:04)
标签:

it



#include 'stdafx.h'
#include<iostream>

using namespace std;

const int N = 9;


//inline void swap(int& a, int& b)
//{
//     int temp;
//     temp = a;
//     a = b;
//     b = temp;
//}
void sift(int heapArray[], int i, int length)
{
    int left = 2 * i + 1;
    int right = 2 * i + 2;
    int largest = i;

    if(left < length && heapArray[left] > heapArray[i] &&heapArray[left] >= heapArray[right])//等号不能忘,to break the tie
        largest = left;
    if(right < length && heapArray[right] > heapArray[i] && heapArray[right] >= heapArray[left])
 &nbs
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

it

static关键字是C, C++中都存在的关键字, 它主要有三种使用方式, 其中前两种只指在C语言中使用, 第三种在C++中使用(C,C++中具体细微操作不尽相同, 本文以C++为准).
(1)局部静态变量
(2)外部静态变量/函数
(3)静态数据成员/成员函数
下面就这三种使用方式及注意事项分别说明
一、局部静态变量
在C/C++中, 局部变量按照存储形式可分为三种auto, static, register
(<C语言
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

it

分类: programming
原文http://blog.sina.com.cn/s/blog_48e3f9cd0100850k.html
最近稍微研究了下,发现网上没怎么有介绍在VS2005下面如何用Swig制作DLL给Perl用。什么是SWIG,Simplified Wrapper and Interface Generator简单来说是语言粘合剂,把C/C++语言包装给一干语言用。官方站点:
废话少说步入正题:假如你有一个C的文件(官方站点上的例子):


double Foo = 3.0;


int gcd(int x, int y) {
  int g;
  g = y;
  while (x > 0) {
    g = x;
    x = y % x;
    y = g;
  }
  return g;
}

想把这个文件给Perl用。

首先用VS2005建一个win32工程,点击next后选择

Appl

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

c/c

数组名

指针

it

分类: programming
from:http://soft.yesky.com/242/2082242.shtml
引言


  指针是C/C++语言的特色,而数组名与指针有太多的相似,甚至很多时候,数组名可以作为指针使用。于是乎,很多 程序设计者就被搞糊涂了。而许多的大学老师,他们在C语言的教学过程中也错误得给学生讲解:'数组名就是指针'。很幸运,我的大学老师就是其中之一。时至 今日,我日复一日地进行着C/C++项目的开发,而身边还一直充满这样的程序员,他们保留着'数组名就是指针'的误解。

  想必这种误解 的根源在于国内某著名的C程序设计教程。如果这篇文章能够纠正许多中国程序员对数组名和指针的误解,笔者就不甚欣慰了。借此文,笔者站在无数对知识如饥似 渴的中国程序员之中,深深寄希望于国内的计算机图书编写者们,能以'深入探索'的思维方式和精益求精的认真态度来对待图书编写工作,但愿市面上多一些融入 作者思考结晶的心血之作!

  魔幻数组名

  请看程序(本文程序在WIN32平台下编译):

1. #include <iostream.h>
2. in
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

生日

美食

做了长寿面和烤鸡腿,还烤了一个简单的蓝莓蛋糕,味道不错!








阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
(2010-06-04 05:12)
标签:

美食

意大利餐厅

olive

garden

分类: 美国
    第二次去这家意大利餐馆(http://www.olivegarden.com/)了,上次是吃的dinner,记得好像还是同性恋日去得,和其他三个姐们儿,装成蕾丝边,嘿嘿。
    这次是还人情,请别人去吃的lunch。我点的是Shrimp Primavera,通心粉,味道比较淡,我不太喜欢。

另一个点的是Chicken & Gnocchi Veronese,这个我喜欢,浓浓的cheese,alfredo sauce很香啊。那个白的圆的很好吃,不知道用什么做得,cheese + 面粉?是traditional Italian dumplings,很喜欢啊很喜欢,最后我们吃了一半互换了吃,呵呵!
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
  

新浪BLOG意见反馈留言板 不良信息反馈 电话:4006900000 提示音后按1键(按当地市话标准计费) 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

新浪公司 版权所有