Python 2, 83 ,78 7164 bytes
shortest version:
lambda x:sum(map(len,map(str,(range(x+1)if x>0 else range(0,x+cmp(x-1,-1.5),cmp(x,.5))))))
this version saved 5 bytes, thanks to @numbermaniac :
x=input()
print len(''.join(map(str,(range(x+1)if x>0 else range(0,x-1,-1)))))
this one I came up with on my own after that (same amount of bytes):
x=input()
print sum(map(len,map(str,(range(x+1)if x>0 else range(0,x-1,-1)))))