Can you check my code is correct or not?

#include
#include
using namespace std;

int tilingProblem(int p) {
if(p==1) {
return 1;
}
else if(p==2) {
return 2;
}

return tilingProblem(p-1)+tilingProblem(p-2);

}

int main() {
int p;
cin >> p;

cout << tilingProblem(p) << endl;

return 0;

}