"Better" in what sense?
The LIKE
version is sargable as you have no leading wildcards and can use index seeks so that is better in that respect.
In this case you could also consider
SELECT * FROM
TableA
WHERE acccode LIKE '1[3-6]1%'
OR acccode LIKE '121-111%'
As a simplification though the fully expanded version might be more efficient.
If you have no useful index you might prefer just using
SELECT * FROM
TableA
WHERE LEFT(acccode,3) IN ('131','141','151','161')
OR acccode LIKE '121-111%'
Either way it looks as though there is some meaning buried in acccode
that might be best storing in a separate column.