问题:早在ITPUB中看过有个SQL高手,喜欢出谜题,以下是一个谜题。我试用SQL SERVER解决此问题。

用1分,5分,10分,25分,50分硬币凑成一元,总共有几种组合办法?
SELECT'1*'+rtrim(a.number)
+'+5*'+rtrim(b.number)
+'+10*'+rtrim(c.number)
+'+25*'+rtrim(d.number)
+'+50*'+rtrim(e.number)AS result
FROM(select number from master.dbo.spt_values where type='P'and number<=100)a
,(select number from master.dbo.spt_values where type='P'and number<=20)b
,(select number from master.dbo.spt_values where type='P'and number<=10)c
,(select number from master.dbo.spt_values where type='P'and number<=4)d
,(select number from master.dbo.spt_values where type='P'and number<=2)e
WHERE
1*a.number
+5*b.number
+10*c.number
+25*d.number
+50*e.number=100;

结果:

1*100+5*0+10*0+25*0+50*0
1*95+5*1+10*0+25*0+50*0
1*90+5*2+10*0+25*0+50*0
1*85+5*3+10*0+25*0+50*0
1*80+5*4+10*0+25*0+50*0
1*75+5*5+10*0+25*0+50*0
1*70+5*6+10*0+25*0+50*0
1*65+5*7+10*0+25*0+50*0
1*60+5*8+10*0+25*0+50*0
1*55+5*9+10*0+25*0+50*0
1*50+5*10+10*0+25*0+50*0
1*45+5*11+10*0+25*0+50*0
1*40+5*12+10*0+25*0+50*0
1*35+5*13+10*0+25*0+50*0
1*30+5*14+10*0+25*0+50*0
1*25+5*15+10*0+25*0+50*0
1*20+5*16+10*0+25*0+50*0
1*15+5*17+10*0+25*0+50*0
1*10+5*18+10*0+25*0+50*0
1*5+5*19+10*0+25*0+50*0
1*0+5*20+10*0+25*0+50*0
1*90+5*0+10*1+25*0+50*0
1*85+5*1+10*1+25*0+50*0
1*80+5*2+10*1+25*0+50*0
1*75+5*3+10*1+25*0+50*0
1*70+5*4+10*1+25*0+50*0
1*65+5*5+10*1+25*0+50*0
1*60+5*6+10*1+25*0+50*0
1*55+5*7+10*1+25*0+50*0
1*50+5*8+10*1+25*0+50*0
1*45+5*9+10*1+25*0+50*0
1*40+5*10+10*1+25*0+50*0
1*35+5*11+10*1+25*0+50*0
1*30+5*12+10*1+25*0+50*0
1*25+5*13+10*1+25*0+50*0
1*20+5*14+10*1+25*0+50*0
1*15+5*15+10*1+25*0+50*0
1*10+5*16+10*1+25*0+50*0
1*5+5*17+10*1+25*0+50*0
1*0+5*18+10*1+25*0+50*0
1*80+5*0+10*2+25*0+50*0
1*75+5*1+10*2+25*0+50*0
1*70+5*2+10*2+25*0+50*0
1*65+5*3+10*2+25*0+50*0
1*60+5*4+10*2+25*0+50*0
1*55+5*5+10*2+25*0+50*0
1*50+5*6+10*2+25*0+50*0
1*45+5*7+10*2+25*0+50*0
1*40+5*8+10*2+25*0+50*0
1*35+5*9+10*2+25*0+50*0
1*30+5*10+10*2+25*0+50*0
1*25+5*11+10*2+25*0+50*0
1*20+5*12+10*2+25*0+50*0
1*15+5*13+10*2+25*0+50*0
1*10+5*14+10*2+25*0+50*0
1*5+5*15+10*2+25*0+50*0
1*0+5*16+10*2+25*0+50*0
1*70+5*0+10*3+25*0+50*0
1*65+5*1+10*3+25*0+50*0
1*60+5*2+10*3+25*0+50*0
1*55+5*3+10*3+25*0+50*0
1*50+5*4+10*3+25*0+50*0
1*45+5*5+10*3+25*0+50*0
1*40+5*6+10*3+25*0+50*0
1*35+5*7+10*3+25*0+50*0
1*30+5*8+10*3+25*0+50*0
1*25+5*9+10*3+25*0+50*0
1*20+5*10+10*3+25*0+50*0
1*15+5*11+10*3+25*0+50*0
1*10+5*12+10*3+25*0+50*0
1*5+5*13+10*3+25*0+50*0
1*0+5*14+10*3+25*0+50*0
1*60+5*0+10*4+25*0+50*0
1*55+5*1+10*4+25*0+50*0
1*50+5*2+10*4+25*0+50*0
1*45+5*3+10*4+25*0+50*0
1*40+5*4+10*4+25*0+50*0
1*35+5*5+10*4+25*0+50*0
1*30+5*6+10*4+25*0+50*0
1*25+5*7+10*4+25*0+50*0
1*20+5*8+10*4+25*0+50*0
1*15+5*9+10*4+25*0+50*0
1*10+5*10+10*4+25*0+50*0
1*5+5*11+10*4+25*0+50*0
1*0+5*12+10*4+25*0+50*0
1*50+5*0+10*5+25*0+50*0
1*45+5*1+10*5+25*0+50*0
1*40+5*2+10*5+25*0+50*0
1*35+5*3+10*5+25*0+50*0
1*30+5*4+10*5+25*0+50*0
1*25+5*5+10*5+25*0+50*0
1*20+5*6+10*5+25*0+50*0
1*15+5*7+10*5+25*0+50*0
1*10+5*8+10*5+25*0+50*0
1*5+5*9+10*5+25*0+50*0
1*0+5*10+10*5+25*0+50*0
1*40+5*0+10*6+25*0+50*0
1*35+5*1+10*6+25*0+50*0
1*30+5*2+10*6+25*0+50*0
1*25+5*3+10*6+25*0+50*0
1*20+5*4+10*6+25*0+50*0
1*15+5*5+10*6+25*0+50*0
1*10+5*6+10*6+25*0+50*0
1*5+5*7+10*6+25*0+50*0
1*0+5*8+10*6+25*0+50*0
1*30+5*0+10*7+25*0+50*0
1*25+5*1+10*7+25*0+50*0
1*20+5*2+10*7+25*0+50*0
1*15+5*3+10*7+25*0+50*0
1*10+5*4+10*7+25*0+50*0
1*5+5*5+10*7+25*0+50*0
1*0+5*6+10*7+25*0+50*0
1*20+5*0+10*8+25*0+50*0
1*15+5*1+10*8+25*0+50*0
1*10+5*2+10*8+25*0+50*0
1*5+5*3+10*8+25*0+50*0
1*0+5*4+10*8+25*0+50*0
1*10+5*0+10*9+25*0+50*0
1*5+5*1+10*9+25*0+50*0
1*0+5*2+10*9+25*0+50*0
1*0+5*0+10*10+25*0+50*0
1*75+5*0+10*0+25*1+50*0
1*70+5*1+10*0+25*1+50*0
1*65+5*2+10*0+25*1+50*0
1*60+5*3+10*0+25*1+50*0
1*55+5*4+10*0+25*1+50*0
1*50+5*5+10*0+25*1+50*0
1*45+5*6+10*0+25*1+50*0
1*40+5*7+10*0+25*1+50*0
1*35+5*8+10*0+25*1+50*0
1*30+5*9+10*0+25*1+50*0
1*25+5*10+10*0+25*1+50*0
1*20+5*11+10*0+25*1+50*0
1*15+5*12+10*0+25*1+50*0
1*10+5*13+10*0+25*1+50*0
1*5+5*14+10*0+25*1+50*0
1*0+5*15+10*0+25*1+50*0
1*65+5*0+10*1+25*1+50*0
1*60+5*1+10*1+25*1+50*0
1*55+5*2+10*1+25*1+50*0
1*50+5*3+10*1+25*1+50*0
1*45+5*4+10*1+25*1+50*0
1*40+5*5+10*1+25*1+50*0
1*35+5*6+10*1+25*1+50*0
1*30+5*7+10*1+25*1+50*0
1*25+5*8+10*1+25*1+50*0
1*20+5*9+10*1+25*1+50*0
1*15+5*10+10*1+25*1+50*0
1*10+5*11+10*1+25*1+50*0
1*5+5*12+10*1+25*1+50*0
1*0+5*13+10*1+25*1+50*0
1*55+5*0+10*2+25*1+50*0
1*50+5*1+10*2+25*1+50*0
1*45+5*2+10*2+25*1+50*0
1*40+5*3+10*2+25*1+50*0
1*35+5*4+10*2+25*1+50*0
1*30+5*5+10*2+25*1+50*0
1*25+5*6+10*2+25*1+50*0
1*20+5*7+10*2+25*1+50*0
1*15+5*8+10*2+25*1+50*0
1*10+5*9+10*2+25*1+50*0
1*5+5*10+10*2+25*1+50*0
1*0+5*11+10*2+25*1+50*0
1*45+5*0+10*3+25*1+50*0
1*40+5*1+10*3+25*1+50*0
1*35+5*2+10*3+25*1+50*0
1*30+5*3+10*3+25*1+50*0
1*25+5*4+10*3+25*1+50*0
1*20+5*5+10*3+25*1+50*0
1*15+5*6+10*3+25*1+50*0
1*10+5*7+10*3+25*1+50*0
1*5+5*8+10*3+25*1+50*0
1*0+5*9+10*3+25*1+50*0
1*35+5*0+10*4+25*1+50*0
1*30+5*1+10*4+25*1+50*0
1*25+5*2+10*4+25*1+50*0
1*20+5*3+10*4+25*1+50*0
1*15+5*4+10*4+25*1+50*0
1*10+5*5+10*4+25*1+50*0
1*5+5*6+10*4+25*1+50*0
1*0+5*7+10*4+25*1+50*0
1*25+5*0+10*5+25*1+50*0
1*20+5*1+10*5+25*1+50*0
1*15+5*2+10*5+25*1+50*0
1*10+5*3+10*5+25*1+50*0
1*5+5*4+10*5+25*1+50*0
1*0+5*5+10*5+25*1+50*0
1*15+5*0+10*6+25*1+50*0
1*10+5*1+10*6+25*1+50*0
1*5+5*2+10*6+25*1+50*0
1*0+5*3+10*6+25*1+50*0
1*5+5*0+10*7+25*1+50*0
1*0+5*1+10*7+25*1+50*0
1*50+5*0+10*0+25*2+50*0
1*45+5*1+10*0+25*2+50*0
1*40+5*2+10*0+25*2+50*0
1*35+5*3+10*0+25*2+50*0
1*30+5*4+10*0+25*2+50*0
1*25+5*5+10*0+25*2+50*0
1*20+5*6+10*0+25*2+50*0
1*15+5*7+10*0+25*2+50*0
1*10+5*8+10*0+25*2+50*0
1*5+5*9+10*0+25*2+50*0
1*0+5*10+10*0+25*2+50*0
1*40+5*0+10*1+25*2+50*0
1*35+5*1+10*1+25*2+50*0
1*30+5*2+10*1+25*2+50*0
1*25+5*3+10*1+25*2+50*0
1*20+5*4+10*1+25*2+50*0
1*15+5*5+10*1+25*2+50*0
1*10+5*6+10*1+25*2+50*0
1*5+5*7+10*1+25*2+50*0
1*0+5*8+10*1+25*2+50*0
1*30+5*0+10*2+25*2+50*0
1*25+5*1+10*2+25*2+50*0
1*20+5*2+10*2+25*2+50*0
1*15+5*3+10*2+25*2+50*0
1*10+5*4+10*2+25*2+50*0
1*5+5*5+10*2+25*2+50*0
1*0+5*6+10*2+25*2+50*0
1*20+5*0+10*3+25*2+50*0
1*15+5*1+10*3+25*2+50*0
1*10+5*2+10*3+25*2+50*0
1*5+5*3+10*3+25*2+50*0
1*0+5*4+10*3+25*2+50*0
1*10+5*0+10*4+25*2+50*0
1*5+5*1+10*4+25*2+50*0
1*0+5*2+10*4+25*2+50*0
1*0+5*0+10*5+25*2+50*0
1*25+5*0+10*0+25*3+50*0
1*20+5*1+10*0+25*3+50*0
1*15+5*2+10*0+25*3+50*0
1*10+5*3+10*0+25*3+50*0
1*5+5*4+10*0+25*3+50*0
1*0+5*5+10*0+25*3+50*0
1*15+5*0+10*1+25*3+50*0
1*10+5*1+10*1+25*3+50*0
1*5+5*2+10*1+25*3+50*0
1*0+5*3+10*1+25*3+50*0
1*5+5*0+10*2+25*3+50*0
1*0+5*1+10*2+25*3+50*0
1*0+5*0+10*0+25*4+50*0
1*50+5*0+10*0+25*0+50*1
1*45+5*1+10*0+25*0+50*1
1*40+5*2+10*0+25*0+50*1
1*35+5*3+10*0+25*0+50*1
1*30+5*4+10*0+25*0+50*1
1*25+5*5+10*0+25*0+50*1
1*20+5*6+10*0+25*0+50*1
1*15+5*7+10*0+25*0+50*1
1*10+5*8+10*0+25*0+50*1
1*5+5*9+10*0+25*0+50*1
1*0+5*10+10*0+25*0+50*1
1*40+5*0+10*1+25*0+50*1
1*35+5*1+10*1+25*0+50*1
1*30+5*2+10*1+25*0+50*1
1*25+5*3+10*1+25*0+50*1
1*20+5*4+10*1+25*0+50*1
1*15+5*5+10*1+25*0+50*1
1*10+5*6+10*1+25*0+50*1
1*5+5*7+10*1+25*0+50*1
1*0+5*8+10*1+25*0+50*1
1*30+5*0+10*2+25*0+50*1
1*25+5*1+10*2+25*0+50*1
1*20+5*2+10*2+25*0+50*1
1*15+5*3+10*2+25*0+50*1
1*10+5*4+10*2+25*0+50*1
1*5+5*5+10*2+25*0+50*1
1*0+5*6+10*2+25*0+50*1
1*20+5*0+10*3+25*0+50*1
1*15+5*1+10*3+25*0+50*1
1*10+5*2+10*3+25*0+50*1
1*5+5*3+10*3+25*0+50*1
1*0+5*4+10*3+25*0+50*1
1*10+5*0+10*4+25*0+50*1
1*5+5*1+10*4+25*0+50*1
1*0+5*2+10*4+25*0+50*1
1*0+5*0+10*5+25*0+50*1
1*25+5*0+10*0+25*1+50*1
1*20+5*1+10*0+25*1+50*1
1*15+5*2+10*0+25*1+50*1
1*10+5*3+10*0+25*1+50*1
1*5+5*4+10*0+25*1+50*1
1*0+5*5+10*0+25*1+50*1
1*15+5*0+10*1+25*1+50*1
1*10+5*1+10*1+25*1+50*1
1*5+5*2+10*1+25*1+50*1
1*0+5*3+10*1+25*1+50*1
1*5+5*0+10*2+25*1+50*1
1*0+5*1+10*2+25*1+50*1
1*0+5*0+10*0+25*2+50*1
1*0+5*0+10*0+25*0+50*2

  

SQL 谜题(硬币的组合)的更多相关文章

  1. 学习sql中的排列组合,在园子里搜着看于是。。。

    学习sql中的排列组合,在园子里搜着看,看到篇文章,于是自己(新手)用了最最原始的sql去写出来: --需求----B, C, F, M and S住在一座房子的不同楼层.--B 不住顶层.C 不住底 ...

  2. 【BZOJ4830】[HNOI2017]抛硬币(组合计数,拓展卢卡斯定理)

    [BZOJ4830][HNOI2017]抛硬币(组合计数,拓展卢卡斯定理) 题面 BZOJ 洛谷 题解 暴力是啥? 枚举\(A\)的次数和\(B\)的次数,然后直接组合数算就好了:\(\display ...

  3. 最少的硬币数量组合出1到m之间的任意面值(贪心算法)

    题目描述: 你有n种不同面值的硬币,每种面值的硬币都有无限多个,为了方便购物,你希望带尽量少的硬币,并且要能组合出 1 到 m 之间(包含1和m)的所有面值. 输入描述: 第一行包含两个整数:m ,n ...

  4. SQL谜题(加减符号替代)

    问题:将以下字符串”.1.2.3.4.5.6.7.8.9 = 1“中的符号点(.)更改为符号加(+)或符号(-),有多少种方法?请用SQL解决此问题 计算过程: CREATE TABLE #(VAL ...

  5. SQL 谜题(父亲的邮票)

    问题:父亲需要些1分,2分,3分,5分,10分的邮票, 其中两种各买四张,另外的三种各买三张 我忘记是哪几种了?他给了我一些10分硬币,金额刚好买这些邮票 计算及分析过程: --通过极限算法,若都是3 ...

  6. sql server中使用组合索引需要注意的地方

    一.使用组合索引需要注意的地方 1.索引应该建在选择性高的字段上(键值唯一的记录数/总记录条数),选择性越高索引的效果越好.价值越大,唯一索引的选择性最高: 2.组合索引中字段的顺序,选择性越高的字段 ...

  7. SQL谜题(楼层谜题)

    Multiple DwellingsBaker, Cooper, Fletcher, Miller and Smith live on different floors of an apartment ...

  8. sql语句-5-联接组合查询

  9. WebForm 分页、组合查询--2017年1月5日

    sql = "select * from Commodity"; hs = new Hashtable(); if (txt_name.Text.Trim() != "& ...

随机推荐

  1. 如何正确配置Nginx+PHP

    对很多人而言,配置Nginx+PHP无外乎就是搜索一篇教程,然后拷贝粘贴.听上去似乎也没什么问题,可惜实际上网络上很多资料本身年久失修,漏洞百出,如果大家不求甚解,一味的拷贝粘贴,早晚有一天会为此付出 ...

  2. vim(vi)常用操作及记忆方法

    vi(vim)可以说是linux中用得最多的工具了,不管你配置服务也好,写脚本也好,总会用到它.但是,vim作为一个“纯字符”模式下的工具,它的操作和WINDOWS中的文本编辑工具相比多少有些复杂.这 ...

  3. 如何在latex 中插入EPS格式图片

    如何在latex 中插入EPS格式图片 第一步:生成.eps格式的图片 1.利用visio画图,另存为pdf格式的图片 利用Adobe Acrobat裁边,使图片大小合适 另存为.eps格式,如下图所 ...

  4. css水平垂直居中对齐方式

    1.文字或者内联元素的垂直水平居中对齐 css属性 -- 水平居中:text-aligin:center; 垂直居中: line-height:height; 例子:. html: <div c ...

  5. 字体大小和背景颜色修改--Android Studio

    打开: File/seting/Editor/colors&Fonts/Fonts editor Font处默认的不让修改 所以先点击save as  随便点个名字 然后 size就可以修改了

  6. select中文字垂直居中解决办法

    我们知道select标签在各个浏览器中的属性和各浏览器的支持各有些不同,从而造成select选择框在各浏览器的显示有不同,下面我们通过对主要 外形CSS属性的支持,打造全兼容select. 我对sel ...

  7. Mac 操作技巧

    1.OS X下如何在同一个程序之中快速切换窗口 command+`(1左边的那个) 2.

  8. GridLayout 使用

    上次做了一个小键盘,请见:PopupWindow 使用. 效果是这样的: 可以看到,上面的按键是不一样大小的.因为是用LinearLayout布局,用的Button样式也是默认的.数字键和文字键的大小 ...

  9. 简单的C语言文法

    <程序>→<外部声明>|<程序><外部声明> <外部声明>→<函数定义>|<声明> <函数定义>→< ...

  10. 微信小程序常见问题集合(长期更新)

    最新更新: 新手跳坑系列:推荐阅读:<二十四>request:fail错误(含https解决方案)(真机预览问题 跳坑指南<七十>如何让微信小程序服务类目审核通过 跳坑六十九: ...