四川大学(新生赛)羊工八刀(为解决)

四川大学(新生赛)羊工八刀(为解决),第1张

四川大学(新生赛)羊工八刀(为解决)

题目:https://ac.nowcoder.com/acm/contest/25625/E

#include 
#define int long long
using namespace std;
const int maxn=1e6+5;
const int mod=1e9+7;
int t,n,cnt;
char a[maxn];
vector v;
int sum[maxn];
signed main()
{
    cin>>t;
    while(t--)
    {
        memset(sum,0,sizeof(sum));
        v.clear();
        cin>>n;
        cin>>a+1;
        cnt=0;
        for(int i=1;i<=n;i++)
        {
            sum[i]=sum[i-1];
            if(a[i]=='1')
            {
                cnt++;
                sum[i]=sum[i]+i;
                v.push_back(i);
            }
        }
        if(cnt==1){
            cout<<0<<"n";
            continue;
        }
        cnt-=1;
        int f=0;
        int ans=0;
        sum[0]%=mod;
        sum[1]%=mod;
        for(int i=0;i 

没想通为什么能这么求解,要是有大佬看到,麻烦给我解答一下,谢谢啦

学习笔记

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5659030.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存