OpenJudge
文章平均质量分 66
OpenJudge
OrdinaryCrazy
这里是张劲暾的CSDN博客
展开
-
ai2813-画家问题-回溯解法C语言
方法粗陋,时间略长,还望指教。#include #include int mintimes=225;int nowtimes=0;void collor(int*a){ *a?(*a=0):(*a=1);}void change(int*now,int size){ collor(now); collor(now+1); collor(now-1);原创 2017-04-11 00:49:58 · 891 阅读 · 0 评论 -
ai2790-迷宫-C语言-递归算法
算法丑陋,时间略长,还望指教。#include #include int flag;void findway(int size,char*a,char*b,int ay,int ax,int by,int bx)//在a位置寻找走向b的下一步{ int side=size-2;//真实迷宫的大小 //输入问题 if(*a=='#'||*b=='#')原创 2017-04-17 18:21:53 · 1178 阅读 · 0 评论 -
ai1835-宇航员 C语言 暴力求解
算法丑陋,代码过长,还望指教。#include #include #include int x_set = 0,y_set = 0,z_set = 0,times,rows,direction=0,move;char left[10]="left",right[10]="right",up[10]="up",down[10]="down",forw[10]="forward",bac[原创 2017-05-01 16:54:46 · 671 阅读 · 0 评论 -
ai-2766-最大子矩阵-C语言-动态规划
算法丑陋,时间略长,还望指教。#include #include int size;int matrix[100][100];int maxf(int a,int b){ return a>b?a:b;}int count_line(int*line){ int d[size],i,max=-10000; d[0]=line[0]; for(i=原创 2017-05-08 19:05:36 · 1113 阅读 · 0 评论 -
ai-2698-八皇后问题-C语言-递归求解
算法丑陋,速度略慢,还望指教。#include #include #include short queenplaces[92][8];//每个8位数组记录了那一列皇后所在的列indexshort nowline=0;short board[8][8];void putqueen(int n)//n+1表示正在解决哪一个皇后了{ short i,j,k; if(n=原创 2017-05-09 22:14:33 · 446 阅读 · 0 评论 -
poj-2754-八皇后-C语言-递归求解
算法丑陋,时间略长,还望指教。#include short queenplaces[92][8],col[8],line_135[15],line_45[15],now_place;//全局变量默认为0void putqueen(int n)//n+1表示处理到哪个皇后了{ short i,j; if(n==8) { now_place++;原创 2017-05-10 21:06:19 · 595 阅读 · 0 评论 -
poj-2754-八皇后-C语言-递归求解(2)
新算法,啦啦啦。#include #include short queenplaces[92][8],now_line;void putqueen(int n)//n+1表示处理到哪一个皇后了{ short flag,i,j,k; if(n==8) { now_line++; return; } for(i=0;i原创 2017-05-11 19:58:50 · 580 阅读 · 0 评论 -
poj2814-拨钟问题-C语言-枚举算法
算法丑陋,时间略长,还望指教。#include #include /*首先,我们考虑用长度为9的数组表示表盘的状态以及调表的操作,终止的条件是表盘状态数组所有元素模4为0;如果一种操作使用超过4次,那么相当于没有操作,所以操作数组需要多出一位记录造作使用的次数,一个操作最多使用3次特别是我们注意到这个题没有问操作的顺序,所以操作的前后顺序其实是没有影响的;这样其实是对进行了哪些操作原创 2017-06-08 21:59:57 · 846 阅读 · 0 评论 -
poj-2979-陪审团的人选-C语言-动态规划
算法丑陋,时间略长,还望指教。#include #include /*第一步,读懂题意,题目的要求是使得选定方案,在辩控差最小的前提下,辩控和最大。第二步,寻找状态,这道题的状态有两个比较关键的点,一是选了多少人,二是这些人的辩控差,如果我们知道已经选出m人时所有组合的辩控差,从中选取一个是很容易的。所以我们把每个组合的状态记为(选取人数,辩控差)|——>辩控和,并用一个m*m*20原创 2017-06-10 17:04:20 · 820 阅读 · 0 评论 -
poj-2757-最长上升子序列-C语言-动态规划入门
动态规划入门问题#include int list[1000],max[1000];int main(){ int len,i,j; scanf("%d",&len); for(i=0;i<len;max[i++]=1) scanf("%d",&list[i]); for(i=1;i<len;i++) for(j=0;j<i原创 2017-06-11 10:05:45 · 755 阅读 · 0 评论 -
poj2816-红与黑-C语言-递归算法入门
递归算法入门#include char places[22][22];int steps;void slu(int x,int y){ if(places[y][x]=='.'||places[y][x]=='@') { steps++; places[y][x]='#'; slu(x+1,y); slu(原创 2017-06-11 19:15:15 · 2770 阅读 · 0 评论 -
poj-4148-生理周期-C语言-枚举
#include int main(){ int strength,motion,intell,start,destin,i=1; scanf("%d%d%d%d",&strength,&motion,&intell,&start); while(strength!=-1&&motion!=-1&&intell!=-1&&start!=-1) {原创 2017-07-15 10:12:04 · 2108 阅读 · 0 评论 -
poj1661-帮助jimmy-C语言-动态规划
向玄学低头orz。#include struct platform //记录每个平台的状态,左右端位置,高度以及从该平台左右端出发到达地面的最短可能时间{ int left,right,height,lefttime,righttime;};typedef struct platform platform;int min(int a,int b){ return a原创 2017-07-17 11:36:59 · 446 阅读 · 0 评论 -
poj-3237-鸡兔同笼-C语言-简单计算
C语言入门最简单实例,学会将一个用自然语言描述的实际问题抽象成一个计算问题,给出计算过程,继而编程实现计算过程,并将计算结果还原成对原来问题的解答。#include int main(){ int n,m; scanf("%d",&n); for(;n>0;n--) { scanf("%d",&m); if(m%2)原创 2017-07-17 16:50:42 · 4020 阅读 · 0 评论 -
poj1657-Distance on Chessboard(棋盘上的距离)-C语言-简单计算
简单的计算题。#include int king(int x,int y){ return (xy?x-y:y-x);}int queen(int x,int y){ return (!x||!y||x==y)?1:2;}int chariot(int x,int y){ return (!x||!y)?1:2;}int elephant(int x原创 2017-07-18 09:37:54 · 1691 阅读 · 0 评论 -
poj-2801-填词-C语言-简单计算
“一定有解“这个条件废掉了一道好题。#include #include char word[101];short alphabet[26];int main(){ int n,m,wordn,i,j; scanf("%d%d%d",&n,&m,&wordn); for(i=0;i<n;i++) { scanf("%s",word);原创 2017-07-18 22:23:43 · 671 阅读 · 0 评论 -
poj-2818-密码-C语言
来取答案的请收下:/****************************************文件名:poj-2818**Copyright (c) 2010-2020 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170724**描述:poj2818参考答案**版本:1.0**********************************原创 2017-07-25 18:32:56 · 2970 阅读 · 0 评论 -
poj-2806-公共子序列-C语言-动态规划
状态为两个字符串所比较的位数,值是比较部分已有的公共子序列的长度。/*******************************************文件名:poj-2806**Copyright (c) 2010-2020 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170726**描述:poj-2806参考答案**版本;1.0******原创 2017-07-26 09:20:35 · 1367 阅读 · 0 评论 -
百炼2791-矩形覆盖-C语言-动态规划
感谢来自zml大佬的思路,按位记录占用状态真的是绝了。/*******************************************文件名:poj-2791**Copyright (c) 2010-2020 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170726**描述:poj-2791参考答案**版本:1.0************原创 2017-07-29 17:52:23 · 2381 阅读 · 1 评论 -
百炼2774-木材加工-C语言-二分查找
算法丑陋,速度略慢,还望指教。/******************************************************文件名:poj2774**Copyright (c) 2010-2020 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170802**描述:百炼2774参考答案**版本:1.0****************原创 2017-08-02 16:37:08 · 1051 阅读 · 1 评论 -
百炼-2795-金银岛-C语言-快速排序
快排大法好。/****************************************************文件名:百炼-2795**Copyright (c) 2010-2020 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170803**描述:百炼-2795参考答案**版本:1.0**************************原创 2017-08-03 10:04:12 · 852 阅读 · 0 评论 -
百炼-2792-集合加法-C语言-计数排序
巧妙地计数排序/*************************************************文件名:百炼-2792**Copyright (c) 2010-2020 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170803**描述:百炼-2792参考答案**版本:1.0****************************原创 2017-08-03 16:31:35 · 390 阅读 · 0 评论 -
百炼2786-Pell数列-C语言-矩阵乘法-同余类
很不错的一道题,除了矩阵快乘以外,还有线性代数和代数结构的相关知识。/**************************************************文件名:**Copyright (c) 2010-2020 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170804**描述:百炼-2786参考答案**版本:1.0*******原创 2017-08-04 20:05:15 · 927 阅读 · 0 评论 -
百炼-2773-采药-C语言-01背包
典型而传统的01背包解决办法,没有做任何的优化。/**************************************************文件名:百炼-2773**Copyright (c) 2010-2020 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170805**描述:百炼-2773参考答案**版本:3.0**********原创 2017-08-05 23:34:21 · 2412 阅读 · 0 评论 -
百炼-1088-滑雪-C语言-动态规划-记忆化搜索
典型而朴素的记忆化搜索/*******************************************文件名:百炼-1088**Copyright (c) 2010-2020 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170806**描述:百炼1088参考答案**版本:1.0*******************************原创 2017-08-06 10:05:02 · 1479 阅读 · 0 评论 -
百炼-2756-二叉树-C语言-递归
简单入门的递归算法。/********************************************文件名:百炼-2756**Copyright (c) 2010-2020 OrdinaryCrazy**创建人:OrdinaryCrazy**时间:20170806**描述:百炼2756参考答案**版本:1.0*******************************原创 2017-08-06 10:53:06 · 549 阅读 · 0 评论 -
百炼-2694-逆波兰表达式-C语言-递归
一道有趣的递归问题。/**********************************************文件名:百炼-2694**Copyright (c) 2015-2025 OrdinaryCrazy**创建人: OrdinaryCrazy**日期:20170806**描述:百炼-2694参考答案**版本:1.0***************************原创 2017-08-06 11:27:53 · 1037 阅读 · 0 评论 -
百炼-1664-放苹果-C语言-递归算法入门
递归算法入门题,不过如果数字再大一点可能要考虑记忆化搜索了。/****************************************************文件名:百炼-1664**Copyright (c) 2015-2025 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170806**描述:百炼-1664参考答案**版本:1.0**原创 2017-08-06 21:37:39 · 2915 阅读 · 0 评论 -
百炼-2817-木棒-C语言-递归
这个问题就很有意思了,他的状态不再是用单变量表示的,要仔细考虑状态的递归。/********************************************************文件名:百炼-2817**Copyright (c) 2015-2025 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170806**描述:百炼2817参考答案*原创 2017-08-07 10:08:25 · 625 阅读 · 0 评论 -
百炼-2815-城堡问题-C语言-递归算法
首先是一种比较直观的解法,虽然原理没问题,但实现的就不是很有技巧了。/***************************************************文件名:百炼-2815**Copyright (c) 2015-2025 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170807**描述:百炼-2815参考答案**版本:1.0原创 2017-08-07 19:54:38 · 931 阅读 · 0 评论 -
百炼-2749-分解因数-C语言-递归算法
为了方便举一反三,从本篇博客起附题目。/**********************************************文件名:百炼-2749**Copyright (c) 2015-2025 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170807**描述:百炼2749参考答案**版本:1.0*************原创 2017-09-10 19:34:09 · 983 阅读 · 0 评论 -
百炼-2749-分解因数-C语言-递归算法
为了方便举一反三,从本篇博客起附带题目。描述给出一个正整数a,要求分解成若干个正整数的乘积,即a = a1 * a2 * a3 * ... * an,并且1 输入第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个正整数a (1 输出n行,每行输出对应一个输入。输出应是一个正整数,指明满足要求的分解的种数/**********************原创 2017-08-09 09:34:11 · 4349 阅读 · 1 评论 -
百炼-2972-确定进制-C语言-数制转换
描述:6*9 = 42 对于十进制来说是错误的,但是对于13进制来说是正确的。即, 6(13) * 9(13) = 42(13), 而 42(13) = 4 * 131+ 2 * 130= 54(10)。 你的任务是写一段程序读入三个整数p、q和 r,然后确定一个进制 B(21+ 1 * 30= 4(10) 和 121(3) = 1 * 32+ 2 * 31+ 1 * 30=原创 2017-08-09 10:05:11 · 1459 阅读 · 0 评论 -
百炼-1321-棋盘问题-C语言-递归算法
描述:在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。输入:输入含有多组测试数据。每组数据的第一行是两个正整数,n k,用一个空格隔开,表示了将在一个n*n的矩阵内描述棋盘,以及摆放棋子的数目。 n 输出:对于每一组数据,给出一原创 2017-08-09 22:47:18 · 1737 阅读 · 0 评论 -
百炼-2973-Skew数-C语言-数制转换
描述:在 skew binary表示中, 第 k 位的值xk表示xk*(2k-1)。 每个位上的可能数字是0 或 1,最后面一个非零位可以是2, 例如, 10120(skew) = 1*(25-1) + 0*(24-1) + 1*(23-1) + 2*(22-1) + 0*(21-1) = 31 + 0 + 7 + 6 + 0 = 44. 前十个skew数是 0、1、2、10、11、12、原创 2017-08-09 23:39:29 · 432 阅读 · 0 评论 -
OpenJudge百炼-2974-487-3279-C语言-字符串处理
描述:企业喜欢用容易被记住的电话号码。让电话号码容易被记住的一个办法是将它写成一个容易记住的单词或者短语。例如,你需要给滑铁卢大学打电话时,可以拨打TUT-GLOP。有时,只将电话号码中部分数字拼写成单词。当你晚上回到酒店,可以通过拨打310-GINO来向Gino's订一份pizza。让电话号码容易被记住的另一个办法是以一种好记的方式对号码的数字进行分组。通过拨打必胜客的“三个十”号码3-10原创 2017-08-10 09:56:03 · 1154 阅读 · 0 评论 -
OpenJudge百炼-2744-子串-C语言-字符串处理
描述:现在有一些由英文字符组成的大小写敏感的字符串,你的任务是找到一个最长的字符串x,使得对于已经给出的字符串中的任意一个y,x或者是y的子串,或者x中的字符反序之后得到的新字符串是y的子串。输入:输入的第一行是一个整数t (1 输出:对于每一组测试数据,输出一行,给出题目中要求的字符串x的长度。样例输入:23ABCDBCDFFBRCD2rose原创 2017-08-10 11:31:59 · 1018 阅读 · 0 评论 -
OpenJudge百炼-2712-细菌繁殖-C语言-日期处理
描述:一种细菌的繁殖速度是每天成倍增长。例如:第一天有10个,第二天就变成20个,第三天变成40个,第四天变成80个,……。现在给出第一天的日期和细菌数目,要你写程序求出到某一天的时候,细菌的数目。输入:第一行有一个整数n,表示测试数据的数目。其后n行每行有5个整数,整数之间用一个空格隔开。第一个数表示第一天的月份,第二个数表示第一天的日期,第三个数表示第一天细菌的数目,第四个数表示要原创 2017-08-10 16:06:44 · 2908 阅读 · 0 评论 -
OpenJudge百炼-2964-日历问题-C语言-日期处理
描述:在我们现在使用的日历中, 闰年被定义为能被4整除的年份,但是能被100整除而不能被400整除的年是例外,它们不是闰年。例如:1700, 1800, 1900 和 2100 不是闰年,而 1600, 2000 和 2400是闰年。 给定从公元2000年1月1日开始逝去的天数,你的任务是给出这一天是哪年哪月哪日星期几。输入:输入包含若干行,每行包含一个正整数,表示从2000年1月原创 2017-08-10 16:42:28 · 1083 阅读 · 0 评论 -
OpenJudge百炼-2965-玛雅历-C语言-日期处理
描述:上周末,M.A. Ya教授对古老的玛雅有了一个重大发现。从一个古老的节绳(玛雅人用于记事的工具)中,教授发现玛雅人使用了一个一年有365天的叫做Haab的历法。这个Haab历法拥有19个月,在开始的18个月,一个月有20天,月份的名字分别是pop, no, zip, zotz, tzec, xul, yoxkin, mol, chen, yax, zac, ceh, mac, kanki原创 2017-08-10 17:23:30 · 2222 阅读 · 0 评论