#include <bits/stdc++.h> #define ll long long using namespace std; int n, mod = 1000000007; char s[200005]; int main() { cin >> n >> s + 1; ll ans = 0; int flag = 0; for (int i = 1; s[i]; ++i) { if (s[i] == '1') ans = (ans + (ll)(1 + i) * i / 2 % mod * i % mod) % mod, flag = i; else if (flag) ans = (ans + (ll)(i + i - flag + 1) * flag / 2 % mod * flag % mod) % mod; } cout << ans << 'n'; return 0; }
原文链接: https://www.cnblogs.com/2aptx4869/p/12636633.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;
也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/340118
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!