HDU3833——哈希——YY's new problem

http://acm.hdu.edu.cn/showproblem.php?pid=3833

/************************************************
* Author        :Powatr
* Created Time  :2015-9-2 13:38:52
* File Name     :
 ************************************************/

#include <cstdio>
#include <algorithm>
#include <iostream>
#include <sstream>
#include <cstring>
#include <cmath>
#include <string>
#include <vector>
#include <queue>
#include <deque>
#include <stack>
#include <list>
#include <map>
#include <set>
#include <bitset>
#include <cstdlib>
#include <ctime>
using namespace std;

#define lson l, mid, rt << 1
#define rson mid + 1, r, rt << 1 | 1
typedef long long ll;
const int MAXN = 1e5 + 10;
const int INF = 0x3f3f3f3f;
const int MOD = 1e9 + 7;

int a[MAXN];
int _hash[MAXN];
int main(){
    int T;
    int n;
    for(scanf("%d", &T); T--; ){
       scanf("%d", &n);
       memset(_hash, 0, sizeof(_hash));
       for(int i = 1; i <= n; i++){
           scanf("%d", &a[i]);
            _hash[a[i]] = i;
       }
       int flag = 0;
       for(int i = 1; i <= n; i++){
           for(int j = i + 1; j <= n; j++){
               int sum = a[i] + a[j];
               if(sum % 2 == 1) continue;
               sum /= 2;
               if(_hash[sum] > i && _hash[sum] < j){
                   flag = 1;
               break;
               }
           }
           if(flag) break;
       }
       printf("%s\n", flag ? "Y" : "N");
    }
    return 0;
}

  

posted @ 2015-09-02 14:01  Painting、时光  阅读(126)  评论(0编辑  收藏  举报