原数给的范围太大了,直接找规律:除了1、2行,奇数行必定是每行第2个数为偶数,当行数为4的倍数时每行的第3个数为偶数,只为2的倍数时每行的第4个数为偶数。
#include <iostream>
using namespace std;
int main(){
int n;
while(cin>>n){
if(n==1 || n==2){
cout << "-1";
}
else if(n%2==1){
cout << "2";
}
else if(n%4==0){
cout << "3";
}
else cout << "4";
}
}

京公网安备 11010502036488号