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_02_08 - Walidacja adresu e-mail

Bitek dopiero poznaje tajniki tworzenia stron WWW, a jego wuj Bajtosław bardzo mu w tym pomaga. Dziś mają za zadanie stworzyć witrynę obsługującą sklep internetowy. Jak zwykle obaj webmasterzy dzielą się pracą. Bitek zajmuje się częścią programistyczną, zaś jego wuj częścią wizualną. Najtrudniejszą rzeczą będzie zaimplementowanie formularza kontaktowego, w którym nasz bohater musi stworzyć walidację adresu e-mail - nie wie jeszcze, że HTML 5 ma wbudowany mechanizm walidacji adresów mailowych. Czasu jest niewiele, a Bitek ma spore problemy, żeby to poprawnie zaprogramować - szczególnie dlatego, że musi używać języka PHP. Pomóż naszemu bohaterowi i napisz program w dowolnym języku sprawdzający poprawność adresu e-mail. Oto kryteria:

adres e-mail powinien

  • zawierać dokładnie jeden znak (@)
  • można używać małych lub dużych liter języka łacińskiego, cyfr oraz znaki:
    • kropka (.)
    • podłoga (_)
  • adres e-mail musi mieć format [pierwszy ciąg znaków]@[drugi ciąg znaków].[trzeci ciąg znaków składający się z 2 lub 3 liter] (pierwszy i drugi ciąg znaków musi się składać z n znaków, gdzie n zawiera się w przedziale [1..20],
  • w mailu może być wiele znaków kropki i każda musi znajdować się między dwoma znakami różnymi niż znak (.) i (@)

Wejście

W pierwszym wierszu jedna liczba t określająca liczbę zestawów danych.

Każdy zestaw składa się z jednego wiersza, w którym mogą wystąpić znaki ASCII z przedziału [32..126]. Długość wiersza nie przekracza 100 znaków. Na początku i końcu każdego wiersza nie występują spacje.

Wyjście

Dla każdego zestawu testowego napis Tak, jeśli adres e-mail jest prawidłowy oraz Nie w przeciwnym razie.

Przykład

Wejście:
5
mat h@edu.pl
algorytm@edu.pl
algoliga@algoliga.edu.pl
1234@123.PL
1234@123..pl

Wyjście:
Nie
Tak
Tak
Tak
Nie

Dodane przez:Marcin Kasprowicz
Data dodania:2014-09-13
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

ukryj komentarze
2014-11-13 23:29:00 Piotr KÄ…kol
Mam dostęp na innym koncie do wszystkich kodów na SPOJu, więc sprawdziłem Twój program i znalazłem przyczynę SIGABRT usuwając kolejne kawałki Twojego kodu.
Przyczynę umieściłem tutaj (ostatni punkt).

Ostatnio edytowany: 2014-11-13 23:29:40
2014-11-13 21:27:50 Rados³aw Rusiniak
Dlaczego nie? Podejrzewam, że jak najbardziej można i nie z tego powodu masz jednak SIGABRT. Zawsze możesz wrzucić swój kod na forum z prośbą o pomoc.
2014-11-12 21:06:29 Mateusz Wieczorek
czy można uzywać getline w tym programie? mam błąd SIGABRT chyba z tego powodu :/
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.