問題:父親需要些1分,2分,3分,5分,10分的郵票,
其中兩種各買四張,另外的三種各買三張
我忘記是哪幾種了?他給了我一些10分硬幣,金額剛好買這些郵票
計算及分析過程:
--通過極限算法,若都是3,則最小值是63,若都是4,則最大值是84,且能被10整除,則是70和80
1)BETWEEN (1+2+3+5+10)*3 AND (1+2+3+5+10)*4
2)X/10=整數
CREATE TABLE #(VAL INT) INSERT INTO # SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 5 UNION ALL SELECT 10 CREATE TABLE #2(VAL INT) INSERT INTO #2 SELECT 4 UNION ALL SELECT 3 WITH CTE AS ( SELECT #.VAL VAL,#2.VAL VAL1 FROM # JOIN #2 ON 1=1) SELECT RTRIM(C1.VAL1)+'張'+RTRIM(C1.VAL)+'分,'+ RTRIM(C2.VAL1)+'張'+RTRIM(C2.VAL)+'分,'+ RTRIM(C3.VAL1)+'張'+RTRIM(C3.VAL)+'分,'+ RTRIM(C4.VAL1)+'張'+RTRIM(C4.VAL)+'分,'+ RTRIM(C5.VAL1)+'張'+RTRIM(C5.VAL)+'分' Result FROM CTE C1,CTE C2,CTE C3,CTE C4,CTE C5 WHERE C1.VAL1+C2.VAL1++C3.VAL1++C4.VAL1++C5.VAL1=17 AND C1.VAL=1 AND C2.VAL=2 AND C3.VAL=3 AND C4.VAL=5 AND C5.VAL=10 AND C1.VAL1*C1.VAL+C2.VAL1*C2.VAL+C3.VAL1*C3.VAL+C4.VAL1*C4.VAL+C5.VAL1*C5.VAL IN(70,80)
執行結果: