output_description: If S can be obtained by permuting `abc`, print `Yes`; otherwise, print `No`.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      S
attempt: from functools import reduce
  import math
  
  
  def main():
      # 文字列の2進数を数値にする
      # '101' → '5'
      # 文字列の頭に'0b'をつけてint()にわたす
      # binary = int('0b'+'101',0)
  
      # 2進数で立っているbitを数える
      # 101(0x5) → 2
      # cnt_bit = bin(5).count('1')
  
      # N! を求める
      # f = math.factorial(N)
  
      # N の逆元
      # N_inv = pow(N,MOD-2,MOD)
  
      # nCr
      # Nの階乗 * rの階乗の逆元 * n-rの階乗の逆元
  
      # 切り捨て
      # 4 // 3
      # 切り上げ
      # -(-4 // 3)
  
      # 初期値用:十分大きい数(100億)
      INF = float("inf")
  
      # 大きな素数
      MOD = 10**9 + 7
  
      # 1文字のみを読み込み
      # 入力:2
      # a = input().rstrip()
      # 変数:a='2'
  
      # スペース区切りで標準入力を配列として読み込み
      # 入力:2 4 5 7
      # a, b, c, d = (int(_) for _ in input().split())
      # 変数:a=2 b=4 c=5 d =7
  
      # 1文字ずつ標準入力を配列として読み込み
      # 入力:2 4 5 7
      # a = list(int(_) for _ in input().split())
      # 変数:a = [2, 4, 5, 7]
  
      # 1文字ずつ標準入力を配列として読み込み
      # 入力:2457
      # a = list(int(_) for _ in input())
      # 変数:a = [2, 4, 5, 7]
      S = list(_ for _ in input())
      S.sort()
      S = "".join(S)
      if S == "abc":
          print("Yes")
      else:
          print("No")
  
  
  if __name__ == "__main__":
      main()
  
problem_description: Statement
  
  You are given a string S of length 3 consisting of `a`, `b` and `c`. Determine
  if S can be obtained by permuting `abc`.
samples: [{"input": "bac", "output": "Yes\n    \n\nSwapping the first and second characters in `bac` results in `abc`.\n\n* * *"}, {"input": "bab", "output": "No\n    \n\n* * *"}, {"input": "abc", "output": "Yes\n    \n\n* * *"}, {"input": "aaa", "output": "No"}]