Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
33
Task/Five-weekends/GAP/five-weekends.gap
Normal file
33
Task/Five-weekends/GAP/five-weekends.gap
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
# return a list of two lists :
|
||||
# first is the list of months with five weekends between years y1 and y2 (included)
|
||||
# second is the list of years without such months, in the same interval
|
||||
FiveWeekends := function(y1, y2)
|
||||
local L, yL, badL, d, m, y;
|
||||
L := [ ];
|
||||
badL := [ ];
|
||||
for y in [y1 .. y2] do
|
||||
yL := [ ];
|
||||
for m in [1, 3, 5, 7, 8, 10, 12] do
|
||||
if WeekDay([1, m, y]) = "Fri" then
|
||||
d := StringDate([1, m, y]);
|
||||
Add(yL, d{[4 .. 11]});
|
||||
fi;
|
||||
od;
|
||||
if Length(yL) = 0 then
|
||||
Add(badL, y);
|
||||
else
|
||||
Append(L, yL);
|
||||
fi;
|
||||
od;
|
||||
return [ L, badL ];
|
||||
end;
|
||||
|
||||
r := FiveWeekends(1900, 2100);;
|
||||
n := Length(r[1]);
|
||||
# 201
|
||||
Length(r[2]);
|
||||
# 29
|
||||
r[1]{[1 .. 5]};
|
||||
# [ "Mar-1901", "Aug-1902", "May-1903", "Jan-1904", "Jul-1904" ]
|
||||
r[1]{[n-4 .. n]};
|
||||
# [ "Mar-2097", "Aug-2098", "May-2099", "Jan-2100", "Oct-2100" ]
|
||||
Loading…
Add table
Add a link
Reference in a new issue