摘要: 最近老师总是让出一些计算题,于是用haskell写了一个。-- file: make_math2.hs-- 出n道三个参数的加法-- 452 + 990 + 130=1572-- 使用方法: gs n x y-- n 表示需要多少道题-- x 表示最小值-- y 表示最大值-- 比如 gs 10 100 999 表示出10道 加法-- gs'会过滤掉被10整除的数字,这样难一点import System.Randomimport System.IO.UnsafedrawInt :: Int -... 阅读全文
posted @ 2012-06-07 21:24 劳工 阅读(420) 评论(0) 推荐(0) 编辑
摘要: 有这样一道题,有一组数字 245 84 180 230 360 ,问那两个数字相差最小?比较常见的算法是排序然后求相邻两个数字之间的差。 plusList :: Num a => [a] -> [a] plusList [] = [] plusList (x:[]) = [x] plusList (x:y:[]) = [y-x] plusList (x:y:xs) = (y-x):(plusLis... 阅读全文
posted @ 2012-06-07 20:50 劳工 阅读(455) 评论(0) 推荐(0) 编辑
摘要: 一道奥数题,1999年,一个青年说,今年我的生日已过了,我现在的年龄正好是我出生年份的四个数字之和。这个青年是哪年出生的?-- file : AS.hs-- 奥数计算calculateA :: [Integer]calculateA = [ years |a<-[1..9],b<-[0..9],c<-[0..9],d<-[0..9],let years=a*1000+b*100+c*10+d,years<1999,(1999-years)==(a+b+c+d)]Prelude> :l AS.hs [1 of 1] Compiling Main ( AS.hs 阅读全文
posted @ 2012-06-07 09:50 劳工 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 这两年,因为懒得折腾,一直在使用10.04,看着大家对Unity界面的吵吵嚷嚷,很是眼热,对12.04很期待,前段时间偶然使用了一下beta版,感觉干净利落,于是正式版一出立即安装之。连续安装了4遍,整体的感觉非常好。优点不管别人怎么说,我个人感觉Unity界面我很喜欢,尤其是ctrl+super+左、右的设计,超赞。(我原来是使用xmonad来实现这个效果)安装、启动和关机速度比10.04都有提高。缺点有两个明显的问题ibus很蛋疼,主要花的时间都在ibus上面了,最后还是没有搞定。 主要的问题是不稳定,搞得永中office和lyx里面经常无法输入汉字;面板上的输入法图标也是个问题。我的机. 阅读全文
posted @ 2012-06-07 08:42 劳工 阅读(6556) 评论(0) 推荐(0) 编辑