
FOJ解题报告
恋上鱼的猫
这个作者很懒,什么都没留下…
展开
-
FOJ 1036
四塔问题“汉诺塔”,是一个众所周知的古老游戏。现在我们把问题稍微改变一下:如果一共有4根柱子,而不是3根,那么至少需要移动盘子多少次,才能把所有的盘子从第1根柱子移动到第4根柱子上呢? 为了编程方便,您只需要输出这个结果mod 10000的值。 Input该题含有多组测试数据,每组一个正整数n。(0Output一个正整数,表原创 2009-07-28 09:54:00 · 873 阅读 · 0 评论 -
FOJ 1339 Calculator
http://acm.fzu.edu.cn/problem.php?pid=1339 解题思路:这题就是模拟计算器啦,不过这道题给你的都是非负数,所以你就不用考虑负数的情况,题目也好做多了。这道题主要就是用到栈,建两个栈,一个是数值栈,另一个则是运算符栈。当前要放入栈的运算符和栈顶元素比较,运算符高的直接入栈,低或者相等的话,取出栈顶元素,跟这个运算符配对的两个数值也拿出去做运算。运原创 2009-08-06 10:13:00 · 962 阅读 · 0 评论 -
粉刷迷宫
粉刷迷宫Time Limit: 1 Seconds Memory Limit: 32768 KTotal Submit:108 Accepted:26 Description话说最近PhoenixWright最近太闲了,于是就自己建了个迷宫自娱自乐。但是这迷宫实在是太难看了,都吸引不了MM来玩= =。于是他原创 2009-08-05 22:11:00 · 791 阅读 · 0 评论 -
FOJ 1481 环串
http://acm.fzu.edu.cn/problem.php?pid=1481 解题思路:这道题也是要用到KMP算法,题目给你的串是首尾相连的,所以就想到要把环串放大2倍,模式串放大一倍,匹配就+1,最后输出count. #include #include #define clen 402void GetNext(char t[],int next[])原创 2009-08-04 16:08:00 · 765 阅读 · 0 评论 -
FOJ 1083 Expanding Rods
http://acm.fzu.edu.cn/problem.php?pid=1083 题目大意:路面热胀冷缩会使的路面膨胀起来形成一个拱形,叫你求拱形中心离地面多远。给定你C,n根据公式可以求出拱形的长度L。以拱形为圆的一段弧,路面为圆的弦,半径同时通过路面中点和弧中点构造一个扇形图出来。取扇形角度为a,则可以推出R = L/(2*R),R=l/(2*sin(a)),从而推出原创 2009-08-04 21:38:00 · 763 阅读 · 0 评论 -
FOJ QS Network
http://acm.fzu.edu.cn/problem.php?pid=1096 题目大意:这道题的大意就是说外星人要联系彼此的话,彼此都要有一台网络适配器,并且一个适配器只能对应一个外星人,也就是说你想跟4个人联系的话,你就要买4台的网络适配器。并且呢,每个外星人固定都喜欢买一个自己喜欢的价格的适配器。每个外星人之间联系时,如果中间有线,这联系的费用不仅要包含买网络适配器的钱,原创 2009-08-06 20:16:00 · 1255 阅读 · 0 评论 -
FOJ 1436 Renting Boats
http://acm.fzu.edu.cn/problem.php?pid=1436 题目大意:这道题的意思就是说,一条江上游N个租船点,从一个租船点到另一个租船点都有一个租船费,并且每个租船点都只能前往编号比它大的租船点,这个费用题目已经给你了。问你现在从1这个租船点到最后一个N这个租船点最少的租金。 解题思路:这道题就是求最短路径的问题啦,用Prim算法或者是Dijkst原创 2009-08-07 18:31:00 · 1234 阅读 · 0 评论 -
FOJ 1698 最大乘积
http://acm.fzu.edu.cn/problem.php?pid=1698 解题思路:高精度乘法 #include #include #define LL long struct Anode{ int value[145]; int size;}a;struct Bnode{ LL value[500]; int原创 2009-08-11 19:39:00 · 1058 阅读 · 0 评论 -
FOJ 1404 Andy 的作业
http://acm.fzu.edu.cn/problem.php?pid=1404 解题思路:大数相乘,不过我的程序放在FOJ上运行时,拆成6位或13位为一个元素值才能过,拆成其他位,就过不了,不明原因,深感郁闷中,纠结了我一个晚上。以后把原因找出来了再次更新吧。 #include #include #define LL unsigned long long#原创 2009-08-12 10:16:00 · 808 阅读 · 0 评论 -
FOJ 1839 Open Source University Meetup
http://acm.fzu.edu.cn/problem.php?pid=1839 题目大意:这道题就是学校里面举行若干个游戏项目,每天只举行一个游戏,N个学生都去玩该天举行的游戏,玩每个游戏时,每个学生都会给该游戏评分。现在就是要你求出前K个总评分最高的游戏的分数总和。 解题思路:这个就是每个游戏一个个的求出总和,再排序下,再求前K个数的和就是了。 #includ原创 2009-09-03 12:23:00 · 832 阅读 · 0 评论 -
FOJ 1589 自动机
http://acm.fzu.edu.cn/problem.php?pid=1589 解题思路:纯粹的模拟题,使用到STL的deque模板,因为queue没有清空队列的函数,所以就用它了。这道题关键就是分析好,接收到命令后,这个命令要做什么,要接收哪些数据。分析后,分类处理就是了。 #include #include #include using namespac原创 2009-08-04 12:28:00 · 641 阅读 · 0 评论 -
FOJ 1664 Top K different numbers
http://acm.fzu.edu.cn/problem.php?pid=1664 题目大意:给你N个数,叫你输出前K个最大数,并且这K个数不同,如果找不到K个数输出,就输出-1. 简单题,不说解法了,大家应该都会. #include #include using namespace std;int main(){ int N,K; in原创 2009-08-04 10:56:00 · 797 阅读 · 0 评论 -
FOJ 1190 Ride to School
http://acm.fzu.edu.cn/problem.php?pid=1190 题目大意:有一个北京大学的学生骑车去上学,全程4.5公里。它的爱好就是跟在别人后面骑车,如果有人骑车速度比他快,他就换目标,跟在他背后,问你他骑完这段路程最短要多久时间。 解题思路:这题就是你把每个学生骑完这段路得时间加上他出发时的时间,得出一个总时间。总时间最少的就是答案了。 #incl原创 2009-08-02 14:00:00 · 736 阅读 · 0 评论 -
FOJ 1106 Sum of Factorials
http://acm.fzu.edu.cn/problem.php?pid=1106 题目大意:第一段都是讲废话,第二段才进入正题。题目要求的就是给你一个数N,问你它可不可以表示成为若干个数的阶乘的和,可以就输出“YES”,否则“NO”。输入以负数作为结束标志。 解题思路:题目给的范围就1百万,10!就超过了,所以就只要判断这个数能不能被0!~9!来表示,打个0!~9!的表,原创 2009-08-03 09:46:00 · 1862 阅读 · 2 评论 -
FOJ 1635 Commandos
CommandosA group of commandos were assigned a critical task. They are to destroy an enemy head quarter. The enemy head quarter consists of several buildings and the buildings are connected by roads. T原创 2009-08-01 16:16:00 · 1059 阅读 · 0 评论 -
FOJ 1773 Discount
http://acm.fzu.edu.cn/problem.php?pid=1773 题目大意:买礼物时会有折扣,现在给你一个价格和他的折扣,得出打折后的价格,如果价格中包含有8这个数字,价格就OK。否则就要一直加钱,知道有8出现为止。如果打折后价格有小数位,则进一位再进行判断。 解题思路:用到sprintf函数把数字转换进数组中去,然后判断数组中每个元素是否有8的,有就输出结果就原创 2009-08-02 10:16:00 · 926 阅读 · 0 评论 -
FOJ1011 Power String
#include #include void GetNext(char strings[],int next[]);//KMP算法的获得next算法char strings[1000001];int next[1000001];int main(){ int len; int k,m; /*freopen("e://12.txt","r",stdin);原创 2009-08-02 00:53:00 · 813 阅读 · 0 评论 -
FOJ 1409 文件压缩
http://acm.fzu.edu.cn/problem.php?pid=1409 解题思路:这题是给你字符串,依次将第一个字母要进行左移一位,构造出若干个新单词。然后进行排序,再取出每个单词的最后一个字符,合成一个新单词,输出它,并且找到原来字符串的第一个字母在这个新字符串中的位置。输入字符串到数组中,然后拼接数组,使数组放大一倍,然后进行记录新单词。我定义了一个结构体数组原创 2009-08-03 17:26:00 · 641 阅读 · 0 评论 -
FOJ1019 猫抓老鼠
猫捉老鼠一只猫和一只老鼠在10*10的迷宫中。迷宫中的每个方格可以是空的,或者含有障碍。猫和老鼠可以进入任意一个空的方格中。当他们相遇时,猫和老鼠在同一个方格中。但是,无论猫或老鼠都不能进入有障碍的方格。我们可以用字符组成的二维数组表示迷宫,如下图所示。 老鼠在迷宫中按照一种固定的方式行走:每个时刻,老鼠都向它所面对的方向前进一格,这需要花费1秒时间。原创 2009-07-31 20:28:00 · 1136 阅读 · 1 评论 -
FOJ 1563 Prime Numbers
Prime NumbersCompute the number of prime numbers in a given interval.A prime number is an integer p greater than 1 whose only positive divisors are 1 and p. InputThe first原创 2009-07-31 20:37:00 · 736 阅读 · 0 评论 -
FOJ 1656 How many different numbers
http://acm.fzu.edu.cn/problem.php?pid=1656 题目大意:给你一组数,将他们放入数组中。之后给你若干个数组下标区间,求出这个区间中有多少个的不同数值。 解题思路:定义一个结构体A,含有数据成员locate,value,分别用来记录该组数据的值和所在位置。之后用sort函数按照value值从小到大排序。再定义一个数组B,以结构体A的locate值原创 2009-08-02 19:28:00 · 616 阅读 · 0 评论 -
FZU 1920 Left Mouse Button
<br /> <br />http://acm.fzu.edu.cn/problem.php?pid=1920<br /> <br />题目大意:叫你玩扫雷游戏,已经告诉你地雷的位置了,问你最少点几次鼠标左键可以赢这盘扫雷。<br /> <br />解题思路:图的搜索,用DFS,当前点为‘0’,就8个方向搜索,赋值为地雷,最后只要统计一次0的格子就是了。比赛时,一样的想法,就是过不了,OJ上出来了,一提交就过了,真不明白为什么。<br /> <br />#include <stdio.h>#define原创 2010-06-02 13:07:00 · 1142 阅读 · 0 评论