自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 acm分类

acm.pku.edu.cn1、 排序1423, 1694, 1723, 1727, 1763, 1788, 1828, 1838, 1840, 2201, 2376, 2377, 2380, 1318, 1877, 1928, 1971, 1974, 1990, 2001, 2002, 2092, 2379,1002(需要字符处理,排序用快排即可) 1007(稳定的排序) 2159(题意较难懂)

2010-04-26 22:04:00 378

原创 杭电动态规划习题

Robberies http://acm.hdu.edu.cn/showproblem.php?pid=2955 背包;第一次做的时候把概率当做背包(放大100000倍化为整数):在此范围内最多能抢多少钱 最脑残的是把总的概率以为是抢N家银行的概率之和… 把状态转移方程写成了f[j]=max{f[j],f[j-q[i].v]+q[i].money}(f[j]表示在概率j之下能抢的大洋);正确的方程

2010-04-25 21:20:00 1819

原创 几种算法

几种算法2010-01-22 22:17                                          NO.1 贪心算法 1 在对问题求解时,总是作出在当前看来是最好的选择。也就是说,不从整体上加以考虑,它所作出的仅仅是在某种意义上的局部最优解(是否是全局最优,需要证明)。2 基本步骤:1、从问题的某个初始解出发。2、采用循环语句,当可以向求解目标

2010-04-25 21:19:00 453

原创 hd1005

#include int main(){ int f[100]; long A,B,n; int r,j; f[0]=f[1]=1; scanf("%d%d%ld",&A,&B,&n);//cin >> A >> B >> n; while(A&&B&&n) {  int i=2;  r = 7;  while(1)  {   if(i==n)    break;   f[i] = (A*f[i-

2010-04-25 16:17:00 724

原创 hd1003

#includeint main(){ int n,m,i,j,k; int a[100001]; int st,end; int maxsum,thissum; scanf("%d",&n); for(k=1;k {  scanf("%d",&m);  for(i=0;i  {   scanf("%d",&a[i]);  }        for(i=0;i  {   thissum = 0; 

2010-04-25 16:07:00 570

原创 汉字

#include #include using namespace std;int first(unsigned char ch) { if(ch >= 0xb0 && ch   return 1; else   return 0;}int second(unsigned char ch) { if(ch >= 0xa1 && ch   return 1; else   return 0;}v

2010-04-24 21:31:00 434

原创 input and putput

ACM竞赛之输入输出描述字符串的输入输出处理。 输入第一行是一个正整数N,最大为100。之后是多行字符串(行数大于N),  每一行字符串可能含有空格,字符数不超过1000。输出先将输入中的前N行字符串(可能含有空格)原样输出,再将余下的字符串(不含有空格)以空格或回车分割依次按行输出。每行输出之间输出一个空行。样例输入2www.njupt.edu.cn NU

2010-04-24 21:30:00 685

原创 ACM输入输出

ACM竞赛之输入输出描述字符串的输入输出处理。 输入第一行是一个正整数N,最大为100。之后是多行字符串(行数大于N),  每一行字符串可能含有空格,字符数不超过1000。输出先将输入中的前N行字符串(可能含有空格)原样输出,再将余下的字符串(不含有空格)以空格或回车分割依次按行输出。每行输出之间输出一个空行。样例输入2www.njupt.edu.cn NU

2010-04-21 17:14:00 2355

原创 信息数字化2

题目1四名专家对四款赛车进行了评论:A说:2号赛车是最好的。B说:4号赛车是最好的。C说:3号赛车不是最好的。D说:B说错了。事实上只有一款赛车最佳,且只有一名专家的评论是正确的。算法思想:有4个bool型的数值相加,当且仅当只有一个正确时,即有1个等于1.其他3个等于0,这时表示只有一位专家说对了,这          是输出的m就是最好的赛车。试用C语言编程求解: 1)#inclu

2010-04-11 17:58:00 755

原创 第二大的数

#includevoid main(){   int find_sec_max(int data[],int count);   int a[] = {2,4,6,8,7,2,5};   printf("%d",find_sec_max(a,5));}static int MINNUMBER =  -32767;int find_sec_max( int data[] , int count)//

2010-04-11 17:57:00 441

原创 矩阵的算法

(1)矩阵的加、减运算 C(i,j)=a(i,j)+b(i,j) 加法 C(i,j)=a(i,j)-b(i,j) 减法 (2)矩阵相乘 (矩阵A有M*L个元素,矩阵B有L*N个元素,则矩阵C=A*B有M*N个元素)。矩阵C中任一元素 (i=1,2,…,m; j=1,2,…,n) #define M 2 #define L 4 #define N 3 void mv(int a[M][L], int

2010-04-11 17:56:00 695

原创 歌巴德猜想

任意一个大于等于6的偶数都可以分解为两个素数之和) 基本思想:n为大于等于6的任一偶数,可分解为n1和n2两个数,分别检查n1和n2是否为素数,如都是,则为一组解。如n1不是素数,就不必再检查n2是否素数。先从n1=3开始,检验n1和n2(n2=N-n1)是否素数。然后使n1+2 再检验n1、n2是否素数,… 直到n1=n/2为止。   利用上面的prime函数,验证哥德巴赫猜想的程序代码如下

2010-04-11 17:55:00 917

原创 最大子序列

#includeint MaxSubSum(int a[],int n){ int i,j; int seqstart,seqend; int maxsum,thissum; for(i=0;i {  thissum = 0;  for(j=i;j  {   thissum += a[j];   if(thissum>maxsum)   {    maxsum = thissum;    seqs

2010-04-10 15:19:00 282

原创 Builder--EnumWindows

//---------------------------------------------------------------------------#include #pragma hdrstop#include "Unit1.h"//---------------------------------------------------------------------------

2010-04-10 15:18:00 393

原创 图的邻接表

#include#include#define MAX 20struct node{ int data; struct graph *next;};struct Graph{ struct node array[MAX]; int vexnum,arcnum;};void Create_Graph(struct Graph *G){ int i,j; int Visited[MAX]; struc

2010-04-10 15:16:00 270

原创 文件读写

#include#includevoid OpenFile(char filename[],char fcopyname[]){ char ch; char a[100]; FILE *p,*q; p = fopen(filename,"w"); printf("input a string:/n"); scanf("%s",a); q = fopen(fcopyname,"wt"); if(!q

2010-04-10 15:15:00 257

原创 汉诺塔

#includevoid Hano(int n,int a,int b,int c){ if(n==1) {  printf("%c->%c/n",a,b); } else {  Hano(n-1,a,c,b);        printf("%c->%c/n",a,c);     Hano(n-1,b,a,c); }}void main(){ int n; char a,b,c; print

2010-04-10 15:14:00 312

原创 动态数组(指针)

#include#include#define max 50struct array{ int *base; int length;};void main(){ int count,*p,i,n; struct array *s; s = (struct array *)malloc(sizeof(struct array)*max); while(scanf("%d",&count)==1) {

2010-04-10 15:14:00 415

原创 信息数字化

#includevoid main(){ int x; for(x=1;x {  if(((x!=1)+(x==3)+(x==4)+(x!=4))==3)  {   printf("%c是小偷",x+64);   break;  } }}

2010-04-10 15:13:00 398

原创 八皇后问题

#include#include#define MAX 8 //8*8的棋盘int board[MAX];void show_result(){ int i; for(i=0;i  printf("(%d,%d)",i,board[i]); printf("/n");}//检查是否在同一直线上int check_cross(int n){ int i; for(i=0;i {  if(boar

2010-04-10 15:12:00 280

原创 动态规划01

#includevoid main(){ int i,j; int a[10][10][3]; int n; printf("input a number n:/n"); scanf("%d",&n); for(i=1;i {  for(j=1;j  {   printf("input a number:/n");   scanf("%d",&a[i][j][1]);   a[i][j][2] =

2010-04-10 15:07:00 255

原创 ProcessCreate

// 01CreateProcess.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include#includeint main(int argc, char* argv[]){ printf("Hello World!/n"); char szCommand[] = "cmd"

2010-04-10 15:06:00 348

原创 ProcessList

// 01ProcessList.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include#include#includeint main(int argc, char* argv[]){    PROCESSENTRY32 pe32; pe32.dwSize = sizeof

2010-04-10 15:04:00 307

原创 日历系统

  #include#include#includeint main(){ int year,month,day=1,i,j,d,data,e; char h; printf("/n/n/t                 *  显示日历  *                 /n");  printf("/n/t-----------------------/n"); printf("/t请

2010-04-10 15:02:00 490

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除