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

Leave a Comment

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.