QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#165260 | #7109. Traveling on the Axis | __mjj | AC ✓ | 16ms | 3480kb | C++20 | 1.8kb | 2023-09-05 17:03:07 | 2023-09-05 17:03:07 |
Judging History
answer
#include <iostream>
#include <algorithm>
#include <cstring>
#include <vector>
#include <cstdio>
#include <queue>
#include <unordered_map>
#include <set>
#include <cmath>
#include <map>
#include <stack>
#include <sstream>
#include <random>
#include <ctime>
#include <chrono>
#define ios ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
#define TIME cerr << 1e3 * clock() / CLOCKS_PER_SEC << " ms\n";
#define debug(x) cerr << #x << " : " << x << '\n'
#define all(v) v.begin() , v.end()
// std::mt19937 rnd(std::chrono::system_clock::now().time_since_epoch().count());
#define x first
#define y second
#define int long long
using namespace std;
typedef long long LL;
typedef pair<int , int> PII;
const int N = 2e5 + 5;
const int INF = 0x3f3f3f3f;
const int mod = 998244353;
int read(){
int x = 0 , f = 1;
char c = getchar();
while(c < '0' || c > '9'){
if(c == '-')f = -1;
c = getchar();
}
while(c >= '0' && c <= '9'){
x = x * 10 + c - '0';
c = getchar();
}
return x * f;
}
void solve(){
string s;
cin >> s;
int res = 0;
int n = s.size();
int cur = n;
for(int i = 1 ; i <= n ; i ++){
res += cur * (cur + 1) / 2;
cur --;
}
for(int i = 0 ; i < s.size() ; i ++){
if(s[i] == '0')res += n - i;
}
for(int i = 0 ; i < s.size() - 1 ; i ++){
if(s[i + 1] == s[i]){
res += (i + 1) * (n - (i + 1));
}
}
cout << res << endl;
}
signed main(){
int T;
cin >> T;
while(T --){
solve();
}
return 0;
}
/* stuff you should look for
* int overflow, array bounds
* special cases (n=1?)
* do smth instead of nothing and stay organized
* WRITE STUFF DOWN
* DON'T GET STUCK ON ONE APPROACH
*/
这程序好像有点Bug,我给组数据试试?
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 3456kb
input:
3 101 011 11010
output:
12 15 43
result:
ok 3 lines
Test #2:
score: 0
Accepted
time: 16ms
memory: 3480kb
input:
6107 1010101 010110100110101 1010 1010101010010101010 101011 0101101011010101010 0101101011 11011010101 010 1011010 10110101010101010100 010101010110101 10101010101011 0101010101010101011 00101010011000 1010101010010110110 01010101001010101010 101010101010101 100100101010101010 01 011 0101010100101 ...
output:
96 889 24 1515 69 1567 279 345 14 106 1702 791 621 1447 764 1615 1755 736 1333 6 15 542 44 1689 1515 140 833 497 596 24 1640 694 462 30 425 14 1041 1446 96 504 124 75 560 970 771 945 6 1 321 137 786 720 206 769 46 103 225 74 554 2 100 529 260 207 197 2 197 1041 140 857 207 1 74 1604 41 343 1041 14 1...
result:
ok 6107 lines
Extra Test:
score: 0
Extra Test Passed