PAT狼人殺簡単版
8538 ワード
, 1ms,hhh~
#include
#include
#define MAX_N 505
using namespace std;
int N;
int Word[MAX_N];
bool Is_Lie(int i,int a,int b)
{
int aim;
bool man;
aim=abs(Word[i]);
man=Word[i]>0?true:false;
if(man&&(aim==a||aim==b)) return true;
if(!man&&aim!=a&&aim!=b) return true;
return false;
}
bool Is_Legal(int a,int b)
{
bool in=false,out=false;
for(int i=1;i<=N;++i)
if(Is_Lie(i,a,b)){
if(i==a||i==b){
if(in) return false;
in=true;
}else{
if(out) return false;
out=true;
}
}
if(in&&out) return true;
return false;
}
int main()
{
cin>>N;
for(int i=1;i<=N;++i) cin>>Word[i];
for(int i=1;i<N;++i)
for(int j=i+1;j<=N;++j)
if(Is_Legal(i,j)){
cout<<i<<' '<<j<<endl;
return 0;
}
cout<<"No Solution"<<endl;
return 0;
}