程序设计竞赛
yueashuxia
这个作者很懒,什么都没留下…
展开
-
TOJ 2273 POJ 2818 Making Change DFS C语言
商店有面值为25分、10分、5分、1分的硬币,给出各硬币的数量和要找给顾客的钱数,问怎么使找给顾客的总的硬币数最少。重温DFS,先是用了最暴力的方法,枚举所有的情况#includeint m[5], cnt, res[5], num[5], C, MIN;int c[] = {25, 10, 5, 1};void dfs(int d){ int i, su原创 2012-01-08 19:58:53 · 1342 阅读 · 0 评论 -
float与double的范围和精度
作者: jillzhang 原文地址:http://www.cnblogs.com/jillzhang/archive/2007/06/24/793901.html 本文为原创,转载请保留出处以及作者, 谢谢 C语言和C#语言中,对于浮点类型的数据采用单精度类型(float)和双精度类型(double)来存储,float数据占用32bit,double数据转载 2013-10-14 23:08:53 · 651 阅读 · 0 评论 -
TOJ 3843 快速排序 折半查找
TOJ3843快速排序和折半查找的代码改自《数据结构(C语言版)》严蔚敏#includeint BinarySearch(int *arr, int low, int high, int key){ int mid; while(low <= high) { mid = (low + high) / 2; if(arr[mid]原创 2013-03-16 14:35:06 · 687 阅读 · 0 评论 -
zjut1175 C++ 精确到小数点n位
zjut 1175题 来自:《ACM程序设计》曾宗根 北京大学出版社 p85转载 2013-01-11 12:22:48 · 880 阅读 · 0 评论 -
zjut1185 C++以n位宽度右对齐输出
zjut1185#include#includeusing namespace std;int main(){ int num, temp; stack s; bool neg; while(cin >> num) { neg = (num >= 0)?false:true; temp = neg?(-nu原创 2013-01-22 14:37:57 · 3145 阅读 · 0 评论 -
TOJ 1398 POJ 2362 Square DFS
优化了很久,最后发现只要在普通暴力DFS里加一个参数即可避免超时的命运……最后在TOJ运行时间0'00.00", POJ是16ms我的代码用到的思路有:1. 所有小棍的和要能够整除42. 最长的小棍长度不能超过所有小棍和的1/43. 按小棍的长度从大到小排序,可以很快的排除一些不可能的情况。比如第三个样例有8个小棍1 7 2 6 4 4 3 5,要拼成4原创 2012-01-12 22:28:45 · 948 阅读 · 0 评论 -
TOJ 1926 POJ 1548 Robots 贪心 水题 C语言
思路是贪心,方法就是很水的方法。 做法:1.每次派一个机器人从(1,1)开始往右或往下,走到(24,24)为止。2.如果当前格子有垃圾,就清除。3.如果当前所在的格子右边有垃圾,就往右走。否则,往下走。4.如果走到了最下边,就一直往右走;如果走到了最右边,就一直往下走。5.一个机器人走完,检查还有没有垃圾。有就再派一个,没有就停止。Right[i][j]是(i,原创 2012-01-04 15:01:44 · 951 阅读 · 0 评论 -
TOJ 1115 POJ 1328 Radar Installation 贪心 C/C++
贪心思路:cor[i]数组保存覆盖到该岛的雷达能放置的区间,然后按照左端点从小到大对数组排序。只要雷达放置在某岛的cor[i]保存的区间内,这个岛就能被这个雷达覆盖。排序后,相邻的两个区间只有三种情况。1.第二个区间完全在第一个区间的后面。2.第一个区间的后边一部分与第二个区间的前边一部分重合。3.第二个区间包含在第一个区间内。先把第一个雷达放在第一个区间的右端点。原创 2012-01-09 22:53:08 · 949 阅读 · 0 评论 -
TOJ 1959 POJ 1562 Oil Deposits BFS DFS入门题 C语言
给出n行m列的矩阵,“@”代表有石油,“*”代表没有,如果含有石油的小块相邻,那么属于同一块油田。相邻包括水平、垂直和斜对角,求油田的数量。BFS代码#includeint m, n;char grid[105][105];int x[8] = {-1, -1, -1, 0, 1, 1, 1, 0};int y[8] = {-1, 0, 1, 1, 1, 0, -1,原创 2012-01-02 16:51:29 · 1935 阅读 · 0 评论 -
zjut1181+经典粗心+判断质数
zjut1181#includeusing namespace std;bool isPrime(int n){ int i; if(n == 2) return 1; if(n%2 == 0 || n == 1) return 0; for(i = 3; i*i <= n; i += 2) if(n%i == 0) return 0;原创 2013-01-20 18:40:49 · 690 阅读 · 0 评论