8 / 24
Aug 2010

here you have MPOWER problem statement:

{assign var="code" value="MPOWER"}







{if $par=="polski"}{literal}


Dla danych liczb x, y oraz n wyznacz


 


xy mod n,

 


czyli liczbę r taką, że 0 <= r < n oraz n | (xy - r).


Wejście



t [liczba przypadków testowych <= 10]
x y n [2 <= x, n <= 230, 0 <= y <= 230 - łatwe (1010000 - trudne)

Pierwsze dwa testy są łatwe, kolejne cztery są trudne. Limit punktów (zadanie zostaje zaakceptowane) wynosi 2 pkt.


Wyjście


r [takie, że xy = r (mod n)]


Przykład 1 (łatwy)


<strong>Wejście:</strong>
2
54015779 489100829 472960975
827371214 966345673 443599139

<strong>Wyjście:</strong>
350431544
391669493

Przykład 2 (trudny)

<strong>Wejście:</strong>
1
29809803 47901912849872523461864631327232122 1008098565

<strong>Wyjście:</strong>
718185534

{/literal}{else}{literal}


For a given numbers x, y and n calculate


 


xy mod n,

 


i.e. a number r such that 0 <= r < n and n | (xy - r).


Input



t [the number of test cases <= 10]
x y n [2 <= x, n <= 230, 0 <= y <= 230 - easy (1010000 - hard)

First two test cases are easy, the following four test cases are hard. Threshold is 2 pts (the problem is accepted).


Output


r [such that xy = r (mod n)]

<strong>Input:</strong>
2
54015779 489100829 472960975
827371214 966345673 443599139

<strong>Output:</strong>
350431544
391669493

Example 2 (hard)

<strong>Input:</strong>
1
29809803 47901912849872523461864631327232122 1008098565

<strong>Output:</strong>
718185534

{/literal}{/if}

9 days later
1 month later

You need to tick "Dynamic content" button at the "Edit Problem" panel.

15 days later

Question about editing: Info, Rules and Links in the left menu is still open. smile

Thank You very much. smile
I didn't conjectured because I have never needed to upload files. wink

some questions:
1. Could you add problem ONP?
2. What about moving columns "SOL/MAX" and "SCORE" in ranking next to "NAME"?
3. What about add rankings for languages (maybe all in one ranking)?

  1. I added it about 5 months ago. wink
    Link: http://www.spoj.pl/SHORTEN/problems/RPN
    But it's a little bit different from ONP so users can't submit their programs here: http://contest.pl/2009/10/19/konkurs-najkrotszy-kod-3 , which, as I think, was Your purpose. wink
  2. Done. Thanks for this idea! smile
  3. Do You mean making different rankings for different languages? But it already is available. You just have to use this formula:

http://www.spoj.pl/SHORTEN/ranks/NAME_OF_THE_TASK/lang=LANGUAGE

for example: http://www.spoj.pl/SHORTEN/ranks/FIBON/lang=C

po polsku bedzie prosciej wink

ad 1. tak, wlasnie to mialem na mysli, przypuszczam, ze oryginalne ONP jest zbyt proste? wink

ad 3. raczej chodzilo mi o to, zeby w glownym rankingu poza zbiorcza tabelka byly takze osobne dla poszczegolnych jezykow - mozna by np. uwzglednic tylko te w ktorych cos poprawnie zostalo rozwiazane (spodziewam sie, ze tylko kilka jezykow bedzie uzywanych), albo np. skrocic te pozostale tabelki do 10 pierwszych pozycji? Zdaje sie, ze z perlem zaden inny jezyk nie ma zbytnio szans...

jeszcze taka propozycja, zeby dyskusje z zadania XXX przeniesc tutaj na forum. w ustawieniach contestu mozesz podac adres forum i wtedy w menu po lewej pojawi sie pozycja 'forum'.

  1. Nie tyle jest zbyt proste, co ma za łatwe testy. Np. Twój program, który wrzuciłeś na SHORTENa dla tego testu:

(a+b)/c*(d-e)

wypisuje:

ab+cde-

zamiast:

ab+c/de-*

Tak więc wolałem zrobić trochę trudniejsze zadanie, niż papugować.

  1. A co taka tabelka miałaby zawierać? Np. tabelka C: (ilość rozwiązań, ilość najkrótszych rozwiązań) czy też rozwiązania każdego zadania w tym języku (czy coś innego)?
    A z Perlem może jeszcze równać się Ruby i Bash. wink A nawet C++ w jednym zadaniu i C w innym. wink

  2. Fajny pomysł, ale nie mam uprawnień, żeby np. dorobić tutaj w dziale forum osobną zakładkę:
    http://www.spoj.pl/forum/viewforum.php?f=55
    Ale użytkownicy (przynajmniej niektórzy) by się chyba ucieszyli, bo już jeden mi proponował zrobić forum, ale jakoś nie widzę sensu, bo aż tak często nie potrzeba się konsultować. Ale jeśli byłoby dołączone do tego, to czemu nie? smile Tak więc mógłbyś jako admin dodać tam dział dla mojego kontestu?

  3. Dzięki za propozycje zmian do SHORTENa! smile Kolejne propozycje mile widziane. smile

ad 5. viewforum.php?f=68

ad 3. dokladnie to samo co ta obecna, tyle, ze rozwiazania byly by brane tylko po danym jezyku (grupie jezykow)

ad. 1. Byc moze sie myle, ale mam wrazenie, ze w oryginalnym zadaniu ONP kazde wyrazenie powinno byc otoczone nawiasami - nawet jezeli nie jest to wyraznie powiedziane w tresci zadania to wlasnie taka wydaje sie byc intencja autora (np. przykladowy input). W zwiazku z tym zadania ONP i RPN to dwa rozne zadania. Jezeli to nie jest wielki problem to bylbym wdzieczny gdybys zadanie ONP takze dodal wink

Ad.5. Dzięki wielkie. smile

Ad.3. No ale po co takie rankingi? Ubogo by wyglądało, bo jakbym np. zrobił ranking Perla, to by było mnóstwo myślników, więc nie widzę celu w sumie.

Ad.1. Ahaa. To już wiem czym się różnią. Bo źle zrozumiałem z tymi nawiasami. Myślałem, że każdy test będzie w nawiasie, a nie każde wyrażenie. No to zrobię takie RPN easy za 5pkt do tutoriali i dodam po prostu nawiasy. wink

5 months later
4 years later

Czy może mi ktoś wyjaśnić, dlaczego dla:

1
3 3

Out to:

1

Zaś dla:

1
18446744073709551615 18446744073709551615

(czyli także dwóch identycznych liczb) prawidłowy out to:

0

???

Wzór podany w zadaniu mówi, że zawsze jest to ilość boków mniejszych od b spełniających warunek zadania odjąc liczbę boków mniejszych od a spełniających warunek zadania dodać 1. Czyli jak na mnie w obu przypadkach mamy działania 0 + 1 a ich wyniki to 1.

Dzięki wam wielkie - podołałem jak na razie najtrudniejszemu po Ostrowskim zadaniu smiley

Jeszcze jedna prośba - czy moglibyście się podzielić kodem prawidłowego rozwiązania, np. wkleić go na stronę oeis.org/A003401/b003401.txt1 . Wydaje mi się, że programowanie nie polega na przekopiowaniu zawartości tego linku do tablicy i wysłaniu go na SPOJa, ale jeśli o to chodziło w tym zadaniu (a de facto to zrobiłem, choć mocno zminimalizowałem ilość przeklejonych wartości) to proszę o uświadomienie smile

Pociszające jest jednak to, że o ile w przypadku Maksymiliana musiałem posiłkować się inernetem i modyfikować inne kody aż uzyskałem sprawny program wiedząc jedynie (na podstawie zadania Noe), na czym będzie bazował algorytm o tyle teraz wszystko zrobiłem samodzielnie smile

-- So maja 16, 2015 9:47 pm --

Odpowiadam na pytanie:

Dla małych liczb mój program działał dobrze, bo rozumiejąc treść zadania spokojnie go napisałem smile
Dla dużych liczb mój program nie działał dobrze i w frustracji zapomniałem o co chodzi w zadaniu i - wreszcie - zapomniałem o jednej liczbie do sprawdzenia. W efekcie błędu szukałem wszędzie a nie tam gdzie powinienem. A przecież był on oczywisty - dla wejścia z przykładu widać jasno, że mój program musi co jakiś czas zwrócić zero wink