//写几行就可以发现规律:
//n==1或2时,没有偶数,cout<<-1;
//n==3时,index=2;
//n==4,index=3;
//n==5,index=2;
//n==6,index=4;
//n==7,index=2;
//n==8,index=3;
//n==9,index=2;
//n==10,index=4;
......
//可以发现,index=2,3,2,4重复出现,将n对4取余,可以发现如下规律:
//n%4==3||n%4==1,index==2;
//n%4==0,index=3;
//n%4==2,index=4;
#include<iostream>
using namespace std;
int main()
{
int n;
while(cin>>n)
{
if(n==1||n==2)
{
cout<<-1<<endl;
}
else if(n%4==3||n%4==1)
{
cout<<2<<endl;
}
else if(n%4==0)
{
cout<<3<<endl;
}
else
{
cout<<4<<endl;
}
}
return 0;
} 
京公网安备 11010502036488号