Scala na SPOJu

0

Chciałbym sobie potrenować Scalę na jakichś zadankach. Jak na razie znam tylko jeden serwis co to umożliwia - SPOJ. Problem w tym, że Scala na SPOJu jest chyba źle ustawiona. Dostaję błędy np typu:

/sources/tested.scala:6: error: type Scanner is not a member of package java.util
  var scanner = new java.util.Scanner(System.in)
                              ^
one error found

Wysyłał ktoś zadania na SPOJa w Scali?

0

Ja próbowałem, ale praktycznie cały czas dostawałem przekroczenie czasu zadania, nawet dla najprostszych zadań, więc sobie darowałem.

0

Coś tam piszą, że programy w Scali mają u nich lagi do 1,5 s przez co programy z limitem 1s pewnie nie przejdą nigdy.

Zamiast tego robię wstawki Scalowe na Rosetta Code :P
Tu: http://rosettacode.org/wiki/Perfect_numbers#Scala jest jedno z moich wypocin.

0

Coś tam piszą, że programy w Scali mają u nich lagi do 1,5 s przez co programy z limitem 1s pewnie nie przejdą nigdy.
No proszę, a mój uczący się (z moją pomocą) C# kolega (btw. - nie ja, bo nie zmierzam się męczyć w C# z parsowaniem inputu - chyba jedyny znany mi punkt gdzie C/C++ jest o niebo wygodniejszy/ładniejszy) bez problemu wysłał kilka zadań w C# na SPOJA. Może nie były to najszybsze w rankingu programy, ale przeszły.
Czyżby platforma .NET była szybsza od JVM? :>

0

Czyżby platforma .NET była szybsza od JVM? :>

Nie, programy w Javie, a także wolniejszych językach skryptowych działają. Po prostu SPOJ ma problem z scalą.

0

Czasy można sobie porównać na ideone: http://ideone.com/recent/39-scala

0

http://www.spoj.pl/ranks/TEST/lang=SCALA - wygląda jakby działało

0

Nikt nie mówił, że nie działa. Po prostu ciężko jest rozwiązać te zadania z limitem < 1s dostając 1.5s w plecy na starcie.

0

MSM:
W Javie też spokojnie zadanka da się przepchnąć. Poza tym jest też Scala dla .NETa. Parsowanie inputu czy to w Javie czy to w Scali załatwia się np klasą Scanner. Scanner nie działa tylko z cin/ cout, ale także np ze Stringami czy jakimikolwiek InputStream.

0

Java też w kilku zadaniach ma problemy z przekroczeniem limitu czasu, gdzie to taki sam sposób dla c++ przechodzi z niezłym czasem, imo temu też ostatnio w spoju przeszedłem na c++, bo te limity czasu dobijały.

0

O ile pamiętam to na SPOJu narzut czasowy inicjalizacji runtime'u też jest liczony do czasu wykonywania, Scala dorzuca sporo od siebie do tego. Kiedyś bawiłem się podsyłaniem zadanek w m.in. Common Lispie, SBCL działa całkiem nieźle, ale i tak na postawienie środowiska i JITowanie kodu traci się kilka milisekund.

Dla każdego języka powinno być przygotowane odpowiednie środowisko testowe - rozwiązanie powinno być modułem, z którego właściwy program testowy jedynie korzysta, z którym jest łączony. To pozwoliłoby na precyzyjniejszy pomiar czasu...

0

Na TopCoder właśnie podsyła się tylko takie osobne klasy ztcp. Szkoda, że nie ma tam Scali.

1 użytkowników online, w tym zalogowanych: 0, gości: 1