zoukankan      html  css  js  c++  java
  • 1094 和为k的连续区间

    思路:看到连续区间和就要想到预处理前缀和!然后利用map记录暴力搜索就可以了

     1 #include <iostream>
     2 #include <queue>
     3 #include <stack>
     4 #include <cstdio>
     5 #include <vector>
     6 #include <map>
     7 #include <set>
     8 #include <bitset>
     9 #include <algorithm>
    10 #include <cmath>
    11 #include <cstring>
    12 #include <cstdlib>
    13 #include <string>
    14 #include <sstream>
    15 #include <time.h>
    16 #define x first
    17 #define y second
    18 #define pb push_back
    19 #define mp make_pair
    20 #define lson l,m,rt*2
    21 #define rson m+1,r,rt*2+1
    22 #define mt(A,B) memset(A,B,sizeof(A))
    23 #define mod 1000000007
    24 using namespace std;
    25 typedef long long LL;
    26 const double PI = acos(-1);
    27 const int N=1e4+10;
    28 const int inf = 0x3f3f3f3f;
    29 const LL INF=0x3f3f3f3f3f3f3f3fLL;
    30 LL sum[N],a[N];
    31 map<LL,LL> Q;
    32 int main()
    33 {
    34 #ifdef Local
    35     freopen("data.txt","r",stdin);
    36 #endif
    37     int flag=0,z,y;
    38     LL n,k;
    39     cin>>n>>k;
    40     mt(sum,0);
    41     for(int i=1;i<=n;i++)
    42     {
    43         cin>>a[i];
    44         sum[i]=sum[i-1]+a[i];
    45         Q[sum[i]]++;
    46     }
    47     for(int i=0;i<=n;i++)
    48     {
    49         if(Q[sum[i]+k])
    50         {
    51             for(int j=i;j<=n;j++)
    52             {
    53                 if(sum[j]-sum[i]==k)
    54                 {
    55                     cout<<i+1<<" "<<j<<endl;
    56                     flag=1;
    57                     break;
    58                 }
    59             }
    60         }
    61         if(flag)break;
    62     }
    63     if(!flag)puts("No Solution");
    64 #ifdef Local
    65     cerr << "time: " << (LL) clock() * 1000 / CLOCKS_PER_SEC << " ms" << endl;
    66 #endif
    67 }
    View Code
  • 相关阅读:
    adb devices检测不到夜神模拟器
    adb devices检测不到夜神模拟器
    adb devices检测不到夜神模拟器
    epoll里面mmap释疑
    epoll里面mmap释疑
    epoll里面mmap释疑
    epoll里面mmap释疑
    Redis数据迁移的三个方法
    Redis数据迁移的三个方法
    MySQL:由USE DB堵塞故障引发的思考
  • 原文地址:https://www.cnblogs.com/27sx/p/6298337.html
Copyright © 2011-2022 走看看