Deterministic Finite Automaton (DFA) ใช้สำหรับตรวจสอบว่าตัวเลขนั้นหารด้วยตัวเลขอื่น k ลงตัวหรือไม่ อัลกอริทึมนี้มีประโยชน์เพราะสามารถค้นหาส่วนที่เหลือได้หากจำนวนนั้นหารไม่ได้ ในการแบ่งตาม DFA เราสร้างตาราง DFA ที่มีสถานะ k เราพิจารณาการแสดงเลขฐานสองของตัวเลข ดังนั้นจึงมีเพียง 0 และ 1 ในแต่ละสถานะใน