zoukankan      html  css  js  c++  java
  • 测试 4

    #include<cstdio>
    #include<cstring>
    #include<iostream>
    #include<algorithm>
    using namespace std;
    char s[100005];
    int i,p,o,ans;
    int main(){
        freopen("shower.in","r",stdin);
        freopen("shower.out","w",stdout);
        scanf("%s",s); p=strlen(s);
        for(i=0;i<p;i++){
            if(s[i]==')'){
                if(o==0){
                    o++;
                    ans++;
                }
                else    o--;
            }
            else    o++;
        }
        cout<<ans+o/2;
        return 0;
    }

    思路:首先线性筛预处理出前缀和。

    然后二分答案。

    #include<cstdio>
    #include<cstring>
    #include<iostream>
    #include<algorithm>
    #define MAXN 1000010
    #define LL long long
    using namespace std;
    int tot,N,T,k;
    int prime[80010];
    LL sum[80010];
    bool vis[MAXN];
    void pre(){
        for(int i=2;i<MAXN;i++) {
            if(!vis[i]) prime[++tot]=i;
            for(int j=1;j<=tot;j++) {
                if(i*prime[j]>MAXN) break;
                vis[prime[j]*i]=true;
                if(i%prime[j]==0) break;
            }
        }
    }
    int main() {
        freopen("diary.in","r",stdin);
        freopen("diary.out","w",stdout);
        pre();
        for(int i=1;i<=tot;++i)    sum[i]=(LL)prime[i]+sum[i-1];
        scanf("%d",&T);
        while(T--) {
            scanf("%d%d",&N,&k);
            int l=0,r=tot+1;
            while(l+1<r) {
                int mid=(l+r)>>1;
                LL p=sum[mid+k-1]-sum[mid-1];
                if(p<=N) l=mid;
                else r=mid;
            }
            if(!l)    cout<<"-1"<<endl;
            else    cout<<sum[l+k-1]-sum[l-1]<<endl;
        }
        return 0;
    }

    细雨斜风作晓寒。淡烟疏柳媚晴滩。入淮清洛渐漫漫。 雪沫乳花浮午盏,蓼茸蒿笋试春盘。人间有味是清欢。
  • 相关阅读:
    2014 非常好用的开源 Android 测试工具
    Android 开发最佳实践
    Java_综合案例DAO设计模式(重要)
    Java_Set接口
    Java_List
    Java_类集框架简介
    Java_对象序列化
    Java_打印流
    Java_IO编程
    Java_文件操作
  • 原文地址:https://www.cnblogs.com/cangT-Tlan/p/7787484.html
Copyright © 2011-2022 走看看