fork download
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4.  
  5. int main() {
  6. string email, password;
  7. getline(cin, email);
  8. getline(cin, password);
  9.  
  10. bool valid = true;
  11.  
  12. int at = -1;
  13. for(int i = 0; i < email.size(); i++){
  14. if(email[i] == '@'){ at = i; break; }
  15. }
  16.  
  17. if(at <= 0 || email.size() < at + 5) valid = false;
  18. else {
  19. if(email[email.size()-4] != '.' || email[email.size()-3] != 'c' ||
  20. email[email.size()-2] != 'o' || email[email.size()-1] != 'm')
  21. valid = false;
  22.  
  23. for(int i = 0; i < at; i++) if(email[i] < 'a' || email[i] > 'z') valid = false;
  24. for(int i = at+1; i < email.size()-4; i++) if(email[i] < 'a' || email[i] > 'z') valid = false;
  25. }
  26.  
  27. if(password.size() < 8) valid = false;
  28.  
  29. bool hl=false, hu=false, hd=false, hs=false;
  30. for(int i = 0; i < password.size(); i++){
  31. char c = password[i];
  32. if(c >= 'a' && c <= 'z') hl = true;
  33. else if(c >= 'A' && c <= 'Z') hu = true;
  34. else if(c >= '0' && c <= '9') hd = true;
  35. else if(c=='!'||c=='@'||c=='#'||c=='&'||c=='_'||c=='-') hs = true;
  36. }
  37.  
  38. if(!hl || !hu || !hd || !hs) valid = false;
  39.  
  40. if(valid) cout << "Valid";
  41. else cout << "InValid";
  42.  
  43. return 0;
  44. }
Success #stdin #stdout 0.01s 5312KB
stdin
Standard input is empty
stdout
InValid