We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
Test case 3 is failed and i am not getting the problem where is :
This is my code:
import re
def check(s):
#1check if no of digits are 16 or not after removing -
if len(s.replace("-",""))==16:
for i in s:
if i=="-" or i.isdigit():
continue
else:
return "Invalid"
pattern=r"[456]\d{3}(-?\d{4}){3}"
s_new=s.replace('-',"")
c=1
#checking repetetion of same digit equal to or more than 4
for i in range(len(s_new)-1):
if "-" in s_new:
match=re.finditer(r"-",s_new)
index=[x.start() for x in match]
if index==[3,7,11]:
pass
else:
return "Invalid"
if s_new[i]==s_new[i+1]:
c+=1
if c==4:
return "Invalid"
continue
else:
c=1
if c==1:
if re.match(pattern,s):
return "Valid"
else:
return "Invalid"
else:
return "Invalid"
n=int(input())
for _ in range(n):
s=input()
result=check(s)
print(result)
Cookie support is required to access HackerRank
Seems like cookies are disabled on this browser, please enable them to open this website
Validating Credit Card Numbers
You are viewing a single comment's thread. Return to all comments →
Test case 3 is failed and i am not getting the problem where is : This is my code:
import re
def check(s): #1check if no of digits are 16 or not after removing - if len(s.replace("-",""))==16: for i in s: if i=="-" or i.isdigit(): continue else: return "Invalid"
n=int(input()) for _ in range(n): s=input() result=check(s) print(result)