correct calculate current num since ArrayList index starts from 0