NP-zor bir problem, bir çözüm bulmanın en az çözümünün doğru olduğu hızlı bir şekilde kontrol edilebilen en zor problem için bir çözüm bulmak kadar zor olduğu bir evet/hayır problemidir. Bazı NP-zor problemler, çalışan bir çözümün hızlı bir şekilde kontrol edilebildiği problemlerdir (NP problemleri), bazıları ise değildir. Aynı zamanda NP problemi olan NP-zor problemler, NP-tam (NP-complete) olarak adlandırılan bir kategoriye girer.

Çözümü en az diğer problemler kadar zor olan ve çözümlerini hızlı bir şekilde kontrol edebileceğimiz, aynı zamanda hızlı bir şekilde kontrol edilebilen (hem NP-zor hem de NP) bir problem örneği:

Seyahat eden bir satıcı, seyahatine evinde başlayıp evinde bitirerek 100 şehri ziyaret etmek istiyor. Sınırlı miktarda benzini vardır, bu nedenle sadece toplam 10.000 kilometre yol alabilir. Benzini bitmeden tüm şehirleri ziyaret edip edemeyeceğini bilmek istiyor.

İnsanlar bu problemi olası her cevabı test etmekten daha hızlı nasıl çözeceklerini bilmiyorlar, ancak satıcının bunu yapmasına izin veren bir çözüm bulunursa, bunun doğru olup olmadığını kontrol eden bir algoritma kullanabiliriz. Bu problem Gezgin satıcı problemi olarak da bilinir.

Çözümü en az diğer problemler kadar zor olan ve çözümlerini hızlı bir şekilde kontrol edebileceğimiz, ancak hızlı bir şekilde kontrol edilemeyen (NP-zordur, ancak NP değildir) bir problem örneği:

Birisi basitçe giden bir program başlatırsa,

while(true){ devam; }

ve hiç durmazsa, sonsuza kadar çalışır mı?

Bu türden tüm sorunlara çözüm bulmanın bilinen bir yolu yoktur ve bu da kontrol edilemez.