Looks good, the way words_count gets incremented is clever. Here's a way you could optimize it slightly by losing the "found" and "place" variables, so there is slightly less copying and testing:
Code:
    while (cin >> x )
    {
        size = words.size ();
        for (teller = 0; teller < size; teller ++)
        {
            if (x == words [teller])
            {
				words_count [teller] +=1 ;
				teller = -1;
				break;
            }
        }
		if (teller < 0) continue;
		words.push_back (x) ;
		words_count.push_back  (1) ;
    }
"Break" ends a loop (since it's done at that point) and "continue" proceeds to the next iteration, skipping the remaining code in the loop.