校门外的树 解题报告
这题没什么好说的,我觉得就是用数组判断一下,我用memset优化了一些慢效率的循环,本来以为会超时,但是结果完全相反,速度还挺快。。
代码如下:
C语言:
#include <stdio.h>
#include <string.h>
char map[10001];
int[......]
这题没什么好说的,我觉得就是用数组判断一下,我用memset优化了一些慢效率的循环,本来以为会超时,但是结果完全相反,速度还挺快。。
代码如下:
C语言:
#include <stdio.h>
#include <string.h>
char map[10001];
int[......]
题目的原描述如下,rqnoj和vijos的题目都不完全,少了一幅图片,表格也不清晰。。
【问题描述】
我们现在要利用m台机器加工n个工件,每个工件都有m道工序,每道工序都在不同的指定的机器上完成。每个工件的每道工序都有指定的加工时间。
每个工件的每个工序称为一个操作,我们用记号j-k表示一个操作,其[……]
这题刚拿到手,不知道怎么做,后来看到了题目里说每个主件最多有0,1,2个附件,那也就是说对于每个主件及其附件而言,最多有如下几种情况:不买一件;只买主件;买主件及附件1;买主件及附件2;买主件及附件1,2都买。
这么就好DP了,代码如下:
C语言:
#include <stdio.h>[......]
这种题目我确实不想写解题报告,没什么好写的,说它是贪心都不算,就是简单的模拟下。代码如下:
C语言:
#include <stdio.h>
int apples[10];
int main(void)
{
int ans;
int i, h;
for(i = 0; i <[......]
这题我用的深搜,写来写去都觉得特别麻烦,干脆把从a到b的所有可能都计算出来,然后判断是否比输入的大,是就输出,让计数器加一,到五就退出程序,等下还优化试下,先把这个的代码贴上来。
C语言:
#include <stdio.h>
#include <stdlib.h>
#inc[......]
这题可以说就是01背包的例题,我没什么多余的解释,上代码:
C语言:
#include <stdio.h>
#define max(a, b) ((a)>(b)?(a):(b))
int f[30000];
int main(void)
{
int n, m;
int i,[......]
这题不难,不过我看到大部分的人都是使用的先用快排再去重,有些人是先去重再用快排,我这里就用的是哈希排序,能够以线性时间(O(n))对所有数据实现排序和去重。
没什么好解释的,1~1000,把对应的数字放到相应的数组中就可以了。
#include <stdio.h>
char bucket[......]