Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

FR_07_03 - Register & Login

Bajtek tworzy nowy portal randkowy. Aktualnie pracuje nad funkcjami tworzenia oraz logowania się do kont, z których to będą korzystać samotni mieszkańcy Bajtocji. Powszechnie wiadomo, że bazy danych użytkowników rządzą się swoimi prawami: loginy muszą się od siebie różnić, mieć określoną budowę itp. Bajtek powinien się również zatroszczyć o tzw. "Januszy i Grażyny bezpieczeństwa" – ludzi, którzy uważają, że 3-literowe hasła są skuteczną bronią przeciw atakom równie samotnych hakerów. Jako że wiesz, jak dużej liczbie mieszkańców Bajtocji doskwiera samotność, pomóż 8-bitowemu przyjacielowi w napisaniu programu, który przeprowadzi proces rejestracji nowych użytkowników i zweryfikuje próby logowania na konta. Może wymyślisz też nazwę portalu?

Wejście

Wejście składa się z nieokreślonej ilości wierszy. W pierwszej kolejności znajduje się jeden z dwóch napisów: "register" lub "login" oznaczających rejestrację i logowanie do konta.
Po określeniu czynności widnieje niewielka ilość x działań do wykonania przez program. W kolejnych x linijkach, znajdują się login i hasło.

Wyjście

W przypadku rejestracji twoim zadaniem jest sprawdzić czy:
1) Login oraz hasło są zgodne z niżej postawionymi kryteriami. Jeśli nie to należy wypisać "Blad".
- login musi zawierać od 3 do 12 znaków, a hasło od 5 do 15
- login może zawierać tylko litery oraz cyfry (wielkość liter nie ma znaczenia)
- hasło musi zawierać conajmniej jedną wielką, małą literę, jedną cyfrę oraz jeden znak specjalny 
2) Login nie został już użyty przez innego użytkownika podczas rejestracji.
Jeśli został już użyty, należy wypisać "Login zajety".
Jeśli wszystko będzie się zgadzać, należy wypisać "Zarejestrowano".
W przypadku logowania twoim zadaniem jest określić czy:
1) Konto istnieje, jeśli nie to należy wypisać "Konto nie istnieje".
2) Login i hasło zgadzają się ze sobą, w innym wypadku należy wypisać "Zle haslo".

W przypadku rejestracji twoim zadaniem jest sprawdzić czy:
1) Login oraz hasło są zgodne z niżej postawionymi kryteriami, jeśli nie to należy wypisać "Blad".
- login musi zawierać od 3 do 12 znaków, a hasło od 5 do 15
- login może zawierać tylko litery oraz cyfry (wielkość liter nie ma znaczenia)
- hasło musi zawierać co najmniej jedną wielką, małą literę, jedną cyfrę oraz jeden znak specjalny 

2) Login nie został już użyty przez innego użytkownika podczas rejestracji.
Jeśli został już użyty, należy wypisać "Login zajety", natomiast jeśli wszystko będzie się
zgadzać należy wypisać "Zarejestrowano".

W przypadku logowania twoim zadaniem jest określić czy:
1) Konto istnieje, jeśli nie to należy wypisać "Konto nie istnieje".
2) Login i hasło zgadzają się ze sobą, w innym wypadku należy wypisać "Zle haslo".
Jeśli wszystko się zgadza należy wypisać "Zalogowano".

Przykład

Wejście:

register 3
bajtek13 Haslo123@
BITEK 123456789
bajtek13 bajteK55%
login 5
bajtek13 bajteK55%
bajtek13 Haslo123@
BITEK 123456789
bajtocjusz haselko49
bitariusz 123haSlo!@#
register 1
BITEK Dobrehaslo1!
login 1
BITEK Dobrehaslo1!

Wyjście:

Zarejestrowano
Blad
Login zajety
Zle haslo
Zalogowano
Konto nie istnieje
Konto nie istnieje
Konto nie istnieje
Zarejestrowano
Zalogowano

Dodane przez: 
Data dodania:2017-04-07
Limit czasu wykonania programu:1s
Limit długości kodu źródłowego50000B
Limit pamięci:1536MB
Cluster: Cube (Intel G860)
Języki programowania:All except: ASM32-GCC COBOL D-CLANG D-DMD ELIXIR FANTOM GOSU GRV JS-MONKEY NIM OBJC OBJC-CLANG PICO RUST SCM qobi CHICKEN VB.NET

ukryj komentarze
2017-04-09 22:34:15 Michał Bryjak
Dostane jakiś test teraz przy którym mi WA dawało? :D
2017-04-09 17:15:14 Marcin Kasprowicz
Wszystko jest dobrze opisane

Ostatnio edytowany: 2021-12-19 18:52:15
2017-04-09 15:33:07
Czy dla jednego przypadku (login już zajęty, za krótkie hasło) program powinien wypisać "Blad Login zajety"?
2017-04-09 15:27:05 Michał Bryjak
Czy istnieją jakieś dodatkowe haczyki albo nieścisłości nieopisane w zadaniu? Już nie mam zielonego pojęcia co mi nie gra :P
2017-04-09 15:26:00
Wielkosc liter nie ma znaczenia przy rejestracji, logowaniu czy w obydwu przypadkach?
2017-04-09 06:57:03 Marcin Kasprowicz
TAK
2017-04-09 04:49:30
Czy można przyjąć, że jeśli znak w haśle ma kod ASCII różny od kodu cyfr oraz liter to jest znakiem specjalnym ?
2017-04-08 19:23:03 Marcin Kasprowicz
<50
2017-04-08 19:12:06
Ile oznacza ta niewielka ilość "x"?
2017-04-08 14:44:58 Marcin Kasprowicz
nie i nie ma takich testów
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.