摘要: 题目描述: 在一个果园里,小明已经将所有的水果打了下来,并按水果的不同种类分成了若干堆,小明决定把所有的水果合成一堆。每一次合并,小明可以把两堆水果合并到一起,消耗的体力等于两堆水果的重量之和。当然经过 n‐1 次合并之后,就变成一堆了。小明在合并水果时总共消耗的体力等于每次合并所耗体力之和。 假定每个水果重量都为 1,并且已知水果的种类数和每种水果的数目,你的任务是设计出合并的次序方案,使小明耗费的体力最少,并输出这个最小的体力耗费值。例如有 3 种水果,数目依次为 1,2,9。可以先将 1,2 堆合并,新堆数目为3,耗费体力为 3。然后将新堆与原先的第三堆合并得到新的堆,耗费体力为 12。 阅读全文
posted @ 2013-03-03 11:37 丶Blank 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值。输入: 测试输入包含若干测试用例,每个测试用例占一行,每行不超过200个字符,整数和运算符之间用一个空格分隔。没有非法表达式。当一行中只有0时输入结束,相应的结果不要输出。输出: 对每个测试用例输出1行,即该表达式的值,精确到小数点后2位。样例输入:1 + 24 + 2 * 5 - 7 / 110样例输出:3.0013.36#include <stdio.h>#include <string.h>#include <stack>#include <stdlib.h 阅读全文
posted @ 2013-03-01 16:31 丶Blank 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 题目描述:给出年分m和一年中的第n天,算出第n天是几月几号。输入:输入包括两个整数y(1<=y<=3000),n(1<=n<=366)。输出:可能有多组测试数据,对于每组数据,按 yyyy-mm-dd的格式将输入中对应的日期打印出来。样例输入:2000 32000 312000 402000 602000 612001 60样例输出:2000-01-032000-01-312000-02-092000-02-292000-03-012001-03-01 1 #include <stdio.h> 2 bool isRun(int x) 3 { 4 return 阅读全文
posted @ 2013-02-21 18:53 丶Blank 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 题目描述:输入一个字符串,长度小于等于200,然后将输出按字符顺序升序排序后的字符串。输入:测试数据有多组,输入字符串。输出:对于每组输入,输出处理后的结果。样例输入:bacd样例输出:abcd 1 #include <cstdio> 2 #include <algorithm> 3 #include <cstring> 4 using namespace std; 5 int cmp(char x,char y) 6 { 7 return x<y; 8 } 9 int main()10 {11 char str[210];12 while (scan 阅读全文
posted @ 2013-02-19 22:42 丶Blank 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 有N个学生的数据,将学生数据按成绩高低排序,如果成绩相同则按姓名字符的字母序排序,如果姓名的字母序也相同则按照学生的年龄排序,并输出N个学生排序后的信息。输入: 测试数据有多组,每组输入第一行有一个整数N(N<=1000),接下来的N行包括N个学生的数据。 每个学生的数据包括姓名(长度不超过100的字符串)、年龄(整形数)、成绩(小于等于100的正数)。输出: 将学生信息按成绩进行排序,成绩相同的则按姓名的字母序进行排序。 然后输出学生信息,按照如下格式: 姓名 年龄 成绩样例输入:3abc 20 99bcd 19 97bed 20 97样例输出:bcd 19 97bed 2 阅读全文
posted @ 2013-02-19 10:29 丶Blank 阅读(409) 评论(0) 推荐(0) 编辑
摘要: 【B.Prime Matrix】 http://www.codeforces.com/contest/271/problem/B 题目大意:n×m的格子,每次操作可以将一个格子中的数字加1,问最少操作次数使得存在一行或一列全为质数。 预处理出每个格子需要多少次操作成为质数,然后求最小行、列和即可。素数筛表即可,注意多筛一些。 一开始没打素数表,直接+1 +1的判断,导致超时...然后就有了上一篇文章... 1 #include <iostream> 2 #include <cmath> 3 #define min(a,b) (((a)<(b))? (a) 阅读全文
posted @ 2013-02-17 23:47 丶Blank 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 最简单的筛素数法方法就是从2开始,将所以2的倍数去掉,然后从3开始,将3的倍数去掉.... 同样任何一个数与其它所有素数的乘积必然也不是素数(这是因为每个合数必有一个最小素因子)。 为了试验这种想法,先用2到10之间的数来验证下。 2,3,4,5,6,7,8,9,10 初始时所以flag都是无标记的。第一步 访问2,flag[2]无标记所以将2加入素数表中,然后将2与素数表中的所有数相乘得到的数必定不是素数,2*2=4因此标记flag[4]。 2,3,4,5,6,7,8,9,10第二步 访问3,flag[3]无标记所以将3加入素数表中,将3与素数表中的所有数相乘得到的数必定不是素数,3... 阅读全文
posted @ 2013-02-17 21:14 丶Blank 阅读(198) 评论(0) 推荐(0) 编辑
摘要: POJ-Prob.1458 看算法导论3 自己用java写的,flag可以不用,课后题要求用min(m,n)+O(1)的空间完成...改天再写. 1 import java.util.Scanner; 2 3 /** 4 * Created by IntelliJ IDEA. 5 * User: mayday 6 * Date: 13-2-15 7 * Time: 下午5:03 8 */ 9 public class Main {10 public static int m, n;11 12 public static void main(String[] args... 阅读全文
posted @ 2013-02-15 18:46 丶Blank 阅读(310) 评论(1) 推荐(0) 编辑
摘要: @echo offcolor 02echo 请选择要执行的操作(1-删除箭头,2-修复锁定,3-退出)set choice=set /p choice=请选择(1/2/3)按回车执行:if /i '%choice%'=='1' goto aif /i '%choice%'=='2' goto bif /i '%choice%'=='3' goto end:areg delete HKEY_CLASSES_ROOT\piffile /v IsShortcut /freg delete HKEY_CLA 阅读全文
posted @ 2013-01-16 12:07 丶Blank 阅读(400) 评论(0) 推荐(0) 编辑
摘要: [General] ; maxchow@foxmail.com Name=LCD.W7.默认字体.仿Mac ; 【自动挂钩子进程】 ; [0:Disable] 1:Enable HookChildProcesses=1 阅读全文
posted @ 2012-07-31 22:41 丶Blank 阅读(1846) 评论(0) 推荐(0) 编辑