贪心算法
丁磊_Ml
业精于勤,荒于嬉;行成于思,毁于随。
展开
-
南工ACM:最大的数
描述 小明和小红在打赌说自己数学学的好,于是小花就给他们出题了,考考他们谁NB,题目是这样的给你N个数 在这n个数之间添加N-1个*或+,使结果最大,但不可以打乱原顺序,请得出这个结果 如 1 3 5 结果是(1+3)*5=20;最大 可以添加若干个括号,但一定要保证配对,但是每两个数之间只可能有一个*或+ 数列最前和最后不应有+或乘 小明想赢小红但是他比较笨,请你帮帮他 输入原创 2017-03-27 19:07:45 · 840 阅读 · 0 评论 -
南工ACM:找点
描述 上数学课时,老师给了LYH一些闭区间,让他取尽量少的点,使得每个闭区间内至少有一个点。但是这几天LYH太忙了,你们帮帮他吗? 输入 多组测试数据。 每组数据先输入一个N,表示有N个闭区间(N≤100)。 接下来N行,每行输入两个数a,b(0≤a≤b≤100),表示区间的两个端点。 输出 输出一个整数,表示最少需要找几个点。 样例输入 4 1 5 2 4 1 4 2 3原创 2017-03-27 11:07:01 · 476 阅读 · 0 评论 -
南工ACM:+-字符串
描述 Shiva得到了两个只有加号和减号的字符串,字串长度相同。Shiva一次可以把一个加号和它相邻的减号交换。他想知道最少需要多少次操作才能把第一个字符串变换成第二个字符串。你现在要去帮助他完成那个这个问题。 输入 多组测试数据每组数据有两行,每行包含一个由”+”和”-“最成的字符串。每个子符串长度不超过5000。 输出 仅一个整数,输出最少需要操作的次数。如果答案不存在,输出-1。原创 2017-03-27 09:26:31 · 613 阅读 · 0 评论 -
南工ACM:心急的C小加
描述 C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的时间,如果第i+1个木棒的重量和长度都大于等于第i个处理的木棒,那么将不会耗费时间,否则需要消耗一个单位的时间。因为急着去约会,C小加想在最短的时间内把木棒处理完,你能告诉他应该怎样做吗?输入 第一行是一个整数T(1<T<1500)(1<T<1500),表示输入数据一共有T组。 每组测原创 2017-03-26 22:39:41 · 418 阅读 · 0 评论 -
南工ACM:阶乘之和
描述 给你一个非负数整数n,判断n是不是一些数(这些数不允许重复使用,且为正数)的阶乘之和,如9=1!+2!+3!,如果是,则输出Yes,否则输出No; 输入 第一行有一个整数0<m<1000<m<100,表示有m组测试数据; 每组测试数据有一个正整数n<1000000; 输出 如果符合条件,输出Yes,否则输出No; 样例输入 2 9 10 样例输出 Yes No思路:贪原创 2017-03-26 10:55:09 · 903 阅读 · 0 评论 -
南工ACM:会场安排问题
描述 学校的小礼堂每天都会有许多活动,有时间这些活动的计划时间会发生冲突,需要选择出一些活动进行举办。小刘的工作就是安排学校小礼堂的活动,每个时间最多安排一个活动。现在小刘有一些活动计划的时间表,他想尽可能的安排更多的活动,请问他该如何安排。 输入 第一行是一个整型数m(m<100)表示共有m组测试数据。 每组测试数据的第一行是一个整数n(1<n<10000)n(1<n<10000)表示该测原创 2017-03-26 10:35:48 · 538 阅读 · 0 评论 -
南工ACM:独木舟上的旅行
描述进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别。一条独木舟最多只能乘坐两个人,且乘客的总重量不能超过独木舟的最大承载量。我们要尽量减少这次活动中的花销,所以要找出可以安置所有旅客的最少的独木舟条数。现在请写一个程序,读入独木舟的最大承载量、旅客数目和每位旅客的重量。根据给出的规则,计算要安置所有旅客必须的最少的独木舟条数,并输出结果。输入 第一行输入s,表示测试数据原创 2017-03-26 09:10:06 · 795 阅读 · 0 评论 -
南工ACM:过河问题
描述在漆黑的夜里,N位旅行者来到了一座狭窄而且没有护栏的桥边。如果不借助手电筒的话,大家是无论如何也不敢过桥去的。不幸的是,N个人一共只带了一只手电筒,而桥窄得只够让两个人同时过。如果各自单独过桥的话,N人所需要的时间已知;而如果两人同时过桥,所需要的时间就是走得比较慢的那个人单独行动时所需的时间。问题是,如何设计一个方案,让这N人尽快过桥。 输入 第一行是一个整数T(1<=T<=20)原创 2017-03-25 23:15:28 · 694 阅读 · 0 评论 -
南工ACM:喷水装置1
描述 现有一块草坪,长为20米,宽为2米,要在横中心线上放置半径为Ri的喷水装置,每个喷水装置的效果都会让以它为中心的半径为实数Ri(0#include<stdio.h> #include<math.h>#define LEN 20#define WID 2void allocate(double* a,int n);void kuaipai(double* a,int l,in原创 2017-03-25 13:51:45 · 453 阅读 · 0 评论 -
南工ACM:喷水装置2
描述 有一块草坪,横向长w,纵向长为h,在它的橫向中心线上不同位置处装有n(n<=10000)个点状的喷水装置,每个喷水装置i喷水的效果是让以它为中心半径为Ri的圆都被润湿。请在给出的喷水装置中选择尽量少的喷水装置,把整个草坪全部润湿。输入 第一行输入一个正整数N表示共有n次测试数据。 每一组测试数据的第一行有三个整数n,w,h,n表示共有n个喷水装置,w表示草坪的横向原创 2017-03-25 13:47:56 · 546 阅读 · 0 评论 -
南工ACM:寻找最大数(三)
描述 给出一个整数N,每次可以移动2个相邻数位上的数字,最多移动K次,得到一个新的整数。求这个新的整数的最大值是多少。输入 多组测试数据。 每组测试数据占一行,每行有两个数N和K (1 ≤ N≤ 10^18; 0 ≤ K ≤ 100). 输出 每组测试数据的输出占一行,输出移动后得到的新的整数的最大值。 样例输入 1990 1 100 0 9090000078001234 6 样原创 2017-03-27 12:50:18 · 622 阅读 · 0 评论