c++的程序无法向下调试

问题遇到的现象和发生背景

原问题:https://www.luogu.com.cn/problem/P1003

问题相关代码,请勿粘贴截图
#include <iostream>
#include <vector>
using namespace std;

int main()
{
    int n;
    int a;
    vector<int> arr;
    for(int i=1;i<=9;i++) 
        for(int j=1;j<=9;j++)
            for(int z=1;z<=9;z++)
                arr.push_back(i*100+j*10+z);//把从1~9的各种三位数组合压入动态数组arr 
    n=sizeof(arr)/sizeof(int);//动态数组大小 
    for(int i=0;i<n-2;i++)
        for(int j=i+1;j<n-1;j++)
            for(int z=j+1;z<n;z++)
                if(arr[z]/arr[i]==3 && arr[j]/arr[i]==2)//判断arr[i]:arr[j]:arr[z]是否等于1:2:3 
                    printf("%d %d %d\n",arr[i],arr[j],arr[z]);//输出符合条件的数组 
}

运行结果及报错内容

运行不出结果,调试卡在当前一步

img

img