网站开发实习,徐州市工程造价信息网,南昌网站建设kaiu,asp.net网站的验证码怎么使用1089 狼人杀-简单版 (20 分)以下文字摘自《灵机一动好玩的数学》#xff1a;“狼人杀”游戏分为狼人、好人两大阵营。在一局“狼人杀”游戏中#xff0c;1 号玩家说#xff1a;“2 号是狼人”#xff0c;2 号玩家说#xff1a;“3 号是好人”#xff0c;3 号玩家说#…1089 狼人杀-简单版 (20 分)以下文字摘自《灵机一动·好玩的数学》“狼人杀”游戏分为狼人、好人两大阵营。在一局“狼人杀”游戏中1 号玩家说“2 号是狼人”2 号玩家说“3 号是好人”3 号玩家说“4 号是狼人”4 号玩家说“5 号是好人”5 号玩家说“4 号是好人”。已知这 5 名玩家中有 2 人扮演狼人角色有 2 人说的不是实话有狼人撒谎但并不是所有狼人都在撒谎。扮演狼人角色的是哪两号玩家本题是这个问题的升级版已知 NNN 名玩家中有 2 人扮演狼人角色有 2 人说的不是实话有狼人撒谎但并不是所有狼人都在撒谎。要求你找出扮演狼人角色的是哪几号玩家输入格式输入在第一行中给出一个正整数 NNN5≤N≤1005 \le N \le 1005≤N≤100。随后 NNN 行第 iii 行给出第 iii 号玩家说的话1≤i≤N1 \le i \le N1≤i≤N即一个玩家编号用正号表示好人负号表示狼人。输出格式如果有解在一行中按递增顺序输出 2 个狼人的编号其间以空格分隔行首尾不得有多余空格。如果解不唯一则输出最小序列解 —— 即对于两个序列 Aa[1],…,a[M]A { a[1], …, a[M] }Aa[1],…,a[M] 和 Bb[1],…,b[M]B { b[1], …, b[M] }Bb[1],…,b[M]若存在 0≤kM0 \le k M0≤kM 使得 a[i]b[i]a[i]b[i]a[i]b[i] i≤ki \le ki≤k且 a[k1]b[k1]a[k1]b[k1]a[k1]b[k1]则称序列 AAA 小于序列 BBB。若无解则输出 No Solution。输入样例 15 -2 3 -4 5 4输出样例 11 4输入样例 26 6 3 1 -5 -2 4输出样例 2解不唯一1 5输入样例 35 -2 -3 -4 -5 -1输出样例 3No Solution
#includeiostream
#includevector
#includemath.h
using namespace std;
int main()
{int n;cin n;vectorintv(n 1);for (int i 1; i n; i){cin v[i];}for (int i 1; i n1; i){for (int j i1; j n 1; j){vectorinta(n1,1), lie;a[i] -1;a[j] -1;for (int k 1; k n 1; k){if (v[k] * a[abs(v[k])] 0)lie.push_back(k);}if (lie.size() 2 a[lie[0]] a[lie[1]] 0){cout i j;return 0;}}}cout No Solution;}