title: Can't convert 'int' object to str implicitly: Python 3+
body: <p>My code is supposed to determine and display the number of binary trees after an input.<br>
  I keep getting the <code>can't convert int object to str implicitly</code> error and I have no idea how to fix it.  It easily works in versions of Python under 3.0, so please help, as I'm still a beginner in Python and I would like to understand what I'm doing wrong.  </p>
  
  <pre><code>import sys
  print ("Welcome to Binary Tree Enumeration!")
  x = input("Type an integer to output its binary trees: ")
  print ("\nYou entered " + str(x))
  def distinct(x):
       leafnode = '.'
       dp = []
       newset = set()
       newset.add(leafnode)
       dp.append(newset)
       for i in range(1,x):
           newset = set()
           for j in range(i):
               for leftchild in dp[j]:
                   for rightchild in dp[i-j-1]:
                       newset.add(("(") + leftchild + rightchild + (")"))
           dp.append(newset)
       return dp[-1]
   alltrees = distinct(x+1)
   for tree in alltrees:
       print (tree)
   print ("Thank you for trying this out!")
  </code></pre>
  
  <p>I forgot to add...this is the error I'm getting.</p>
  
  <pre><code>Traceback (most recent call last):
    File "main.py", line 29, in 
      alltrees = distinct(x+1)
  TypeError: Can't convert 'int' object to str implicitly
  </code></pre>