Trivial:
Najpierw uprościmy trochę zadanie mamy znaleźć takie liczby n, że:
(~(4|n)∨~(6|n))∧~(7|n) = ~((4|n)∧(6|n))∧~(7|n) = ~(12|n)∧~(7|n) = ~((12|n)∨(7|n)).
Możemy policzyć ile jest liczb które spełniają warunek (12|n)∨(7|n) a następnie odjąć je od
mocy całego zbioru. Korzystamy z prawa włączania i wyłączania
|A∪B| = |A| + |B| − |A∩B|
Najpierw liczymy ile jest liczb podzielnych przez 12:
A = { 12, 24, ..., 492 }
Teraz te podzielne przez 7:
B = { 7, 14, 21, ..., 497 }
Następnie podzielne przez 7 oraz 12 jednocześnie (czyli podzielnych przez 84)
A∩B = { 84, 168, 252, 336, 420 }
|A∩B| = 5
Zatem mamy:
|A∪B| = 41 + 71 − 5 = 107
Wszystkich liczb jest 500, zatem tych które spełniają warunki zadania jest 500−107 =
393.
Małe sprawdzenie:
Prelude> let k !| n = (n `mod` k) /= 0
Prelude> let ns = [ n | n <− [1..500], (4!|n || 6!|n) && 7!|n ]
Prelude> ns
[1,2,3,4,5,6,8,9,10,11,13,15,16,17,18,19,20,22,23,25,26,27,29,30,31,32,33,34,37,
38,39,40,41,43,44,45,46,47,50,51,52,53,54,55,57,58,59,61,62,64,65,66,67,68,69,71
,73,74,75,76,78,79,80,81,82,83,85,86,87,88,89,90,92,93,94,95,97,99,100,101,102,1
03,104,106,107,109,110,111,113,114,115,116,117,118,121,122,123,124,125,127,128,1
29,130,131,134,135,136,137,138,139,141,142,143,145,146,148,149,150,151,152,153,1
55,157,158,159,160,162,163,164,165,166,167,169,170,171,172,173,174,176,177,178,1
79,181,183,184,185,186,187,188,190,191,193,194,195,197,198,199,200,201,202,205,2
06,207,208,209,211,212,213,214,215,218,219,220,221,222,223,225,226,227,229,230,2
32,233,234,235,236,237,239,241,242,243,244,246,247,248,249,250,251,253,254,255,2
56,257,258,260,261,262,263,265,267,268,269,270,271,272,274,275,277,278,279,281,2
82,283,284,285,286,289,290,291,292,293,295,296,297,298,299,302,303,304,305,306,3
07,309,310,311,313,314,316,317,318,319,320,321,323,325,326,327,328,330,331,332,3
33,334,335,337,338,339,340,341,342,344,345,346,347,349,351,352,353,354,355,356,3
58,359,361,362,363,365,366,367,368,369,370,373,374,375,376,377,379,380,381,382,3
83,386,387,388,389,390,391,393,394,395,397,398,400,401,402,403,404,405,407,409,4
10,411,412,414,415,416,417,418,419,421,422,423,424,425,426,428,429,430,431,433,4
35,436,437,438,439,440,442,443,445,446,447,449,450,451,452,453,454,457,458,459,4
60,461,463,464,465,466,467,470,471,472,473,474,475,477,478,479,481,482,484,485,4
86,487,488,489,491,493,494,495,496,498,499,500]
Prelude> length ns
393