Guest User

Untitled

a guest
Nov 1st, 2019
573
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.88 KB | None | 0 0
  1. ###
  2. Условие
  3. В файловую систему одного суперкомпьютера проник вирус, который сломал контроль за правами доступа к файлам. Для каждого файла известно, с какими действиями можно к нему обращаться:
  4. запись W,
  5. чтение R,
  6. запуск X.
  7. В первой строке содержится число N — количество файлов содержащихся в данной файловой системе. В следующих N строчках содержатся имена файлов и допустимых с ними операций, разделенные пробелами. Далее указано чиcло M — количество запросов к файлам. В последних M строках указан запрос вида Операция Файл. К одному и тому же файлу может быть применено любое колличество запросов.
  8. Вам требуется восстановить контроль над правами доступа к файлам (ваша программа для каждого запроса должна будет возвращать OK если над файлом выполняется допустимая операция, или же Access denied, если операция недопустима.
  9. ###
  10.  
  11. def check_access(file_name, operation):
  12.     if operation in files[file_name]:
  13.         print('OK')
  14.     else:
  15.         print('Access denied')
  16.  
  17.  
  18. n = int(input())  # количество строк
  19. files = {}
  20.  
  21. for i in range(n):
  22.     key, *values = input().split()
  23.     files[key] = values
  24.  
  25. m = int(input())
  26.  
  27. for i in range(m):
  28.     act, name = input().split()
  29.     if name == 'execute':
  30.         act = 'x'
  31.     check_access(name, act[0].title())
Advertisement
Add Comment
Please, Sign In to add comment