Zagadka buntownicza

https://xpil.eu/127

 

Grupa ekstremistów z Wydziału Matematyki Wyższej Uniwersytetu w Ohio zagroziła...

No dobrze. Nie zagroziła. Na Wydziale Matematyki w Ohio pracuje pięćdziesięcioro troje miłych i sympatycznych ludzi z różnych stron świata, którzy nie mają żadnego interesu w wysadzaniu czegokolwiek. Ale dla dobra zagadki załóżmy na chwilę, że jest inaczej 😉

... zagroziła, że w latach 2000 - 2100 będzie wysadzać w powietrze jeden losowo wybrany zabytek na świecie każdego dnia, w którym numer dnia przemnożony przez numer miesiąca da w wyniku numer roku zapisany bez dwóch najstarszych cyfr (a więc: 18 dla roku 2018, 72 dla roku 2072 i tak dalej).

Pytanie #1: Ile zabytków straci ludzkość, jeżeli szaleni ekstremalni matematycy (matematyczni ekstremiści?) z Ohio dotrzymają obietnicy?
Pytanie #2: Kiedy nastąpi i ile dni potrwa najdłuższa przerwa między atakami tych szaleńców?
Pytanie #3: W którym roku stracimy najwięcej zabytków?
Pytanie #4: A w którym - najmniej?

Czas - start!

https://xpil.eu/127

12 komentarzy

      1. No dobra, przeczytałem z większym zrozumieniem i odszczekuję pytanie.
        Na razie działałem w trybie mechanicznym – podstawiania zmiennych.

  1. Ad4: w 2000
    Na razie napisałem program, który wypisuje dzielniki liczb 0d 0 do 99. Teraz dalsza analiza

    1. Ad3: 7 w 2024
      [spoiler title=”2024″]24.1.2024
      12.2.2024
      8.3.2024
      6.4.2024
      4.6.2024
      3.8.2024
      2.12.2024[/spoiler]
      Ad1: 210

  2. — pytanie #1 = 212
    — pytanie #3 = 2024 [7]
    — pytanie #4 – jest 25 lat tylko z jednym zamachem…

    declare @st datetime;
    declare @en datetime;
    select @st= ‘2001-01-01’, @en = ‘2099-12-31’;

    with zakres as (
    select @st data
    union all
    select dateadd(day,1, data)
    from zakres
    where data+1<=@en
    ),
    dane as
    ( select data, DATEPART(day,data) * DATEPART(mm,data)- DATEPART(yy,data)+2000 bum
    from zakres
    )

    , pyt3 as (
    select datepart(yy,data) rok, count(bum) ile
    from dane
    where bum=0
    group by datepart(yy,data)
    )

    select * from pyt3
    order by ile
    OPTION (maxrecursion 0)

    1. pyt 4: są lata bez zamachu – wniosek z komentarza poniżej.
      2037, 2041, 2043, 2047, 2053, 2058, 2059, 2061, 2062, 2067, 2071, 2073, 2074, 2079, 2082, 2083, 2086, 2089, 2094 ,2097

Skomentuj Rzast Anuluj pisanie odpowiedzi

Komentarze mile widziane.

Jeżeli chcesz do komentarza wstawić kod, użyj składni:
[code]
tutaj wstaw swój kod
[/code]

Jeżeli zrobisz literówkę lub zmienisz zdanie, możesz edytować komentarz po jego zatwierdzeniu.