d_skat

sem6_3

Apr 23rd, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.40 KB | None | 0 0
  1. import re
  2.  
  3.  
  4. line = input()
  5. line = line.replace(' ', '')
  6. my_ans = []
  7. test = []
  8. pattern1 = re.compile(r'#(\w{2})(\w{2})(\w{2})')
  9. pattern2 = re.compile(r'(rgb|rbg|gbr|grb|bgr|brg)\((\d+),(\d+),(\d+)\)')
  10. pattern3 = re.compile(r'(rgb|rbg|gbr|grb|bgr|brg)\((\d+)%,(\d+)%,(\d+)%\)')
  11. pattern4 = re.compile(r'(\d+),(\d+),(\d+)')
  12.  
  13. if(re.fullmatch(pattern1, line)):
  14.     voc = re.fullmatch(pattern1, line).groups()
  15.     try:
  16.         my_ans = [int(voc[0], 16), int(voc[1], 16), int(voc[2], 16)]
  17.     except:
  18.         print('ERROR')
  19.         exit(0)
  20. elif(re.fullmatch(pattern2, line)):
  21.     test = re.fullmatch(pattern2, line).groups()
  22.     my_ans.append(int(test[test[0].index('r')+1]))
  23.     my_ans.append(int(test[test[0].index('g') + 1]))
  24.     my_ans.append(int(test[test[0].index('b') + 1]))
  25. elif(re.fullmatch(pattern3, line)):
  26.     test = re.fullmatch(pattern3, line).groups()
  27.     my_ans.append(int(test[test[0].index('r') + 1]) * 255 // 100)
  28.     my_ans.append(int(test[test[0].index('g') + 1]) * 255 // 100)
  29.     my_ans.append(int(test[test[0].index('b') + 1]) * 255 // 100)
  30. elif(re.fullmatch(pattern4, line)):
  31.     test = re.fullmatch(pattern4, line).groups()
  32.     my_ans = [int(test[0]), int(test[1]), int(test[2])]
  33. else:
  34.     print('ERROR')
  35.     exit(0)
  36.  
  37. if(my_ans[0] in range(256) and my_ans[1]
  38.         in range(256) and my_ans[2] in range(256)):
  39.     print(my_ans[0], my_ans[1], my_ans[2])
  40. else:
  41.     print('ERROR')
Add Comment
Please, Sign In to add comment