QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#387076 | #6730. Coolbits | Mayuri | WA | 0ms | 3580kb | C++14 | 11.8kb | 2024-04-12 01:34:34 | 2024-04-12 01:34:36 |
Judging History
answer
//#define _CRT_SECURE_NO_WARNINGS
////#include<bits/stdc++.h>
////using namespace std;
////typedef long long ll;
////typedef long double ld;
////#define endl '\n'
////const ll mod = 1e9 + 7;
////ll T;
////ll l, r;
////ll f(ll x) {
//// ll ans = 1;
//// while (x) {
//// ans = ans * (x % 10) % mod;
//// x /= 10;
//// }
//// return ans;
////}
////int main()
////{
//// ios::sync_with_stdio(0);
//// cin.tie(0);
//// cout.tie(0);
//// ll T; cin >> T;
//// while (T--) {
//// cin >> l >> r;
//// if (l / 10 != r / 10) {
//// cout << 0 << endl;
//// continue;
//// }
//// ll ans = 1;
//// for (ll i = l; i <= r; i++)ans = (ans * f(i)) % mod;
//// cout << ans << endl;
//// }
////}
// WA
//#include<bits/stdc++.h>
//using namespace std;
//typedef long long ll;
//typedef long double ld;
//#define endl '\n'
//const ll mod = 1e9 + 7;
//ll t;
//ll n, m;
//
//int main()//b
//{
// ios::sync_with_stdio(0);
// cin.tie(0);
// cout.tie(0);
// ll t; cin >> t;
// while (t--) {
// cin >> n >> m;
// vector<vector<char>>f(n + 1, vector<char>(m + 1));
// for (ll i = 1; i <= n; i++) {
// for (ll j = 1; j <= m; j++) {
// cin >> f[i][j];
// }
// }
// vector<vector<ll>>a(n + 1, vector<ll>(m + 1));
// for (ll i = 1; i <= n; i++) {
// for (ll j = 1; j <= m; j++) {
// cin >> a[i][j];
// }
// }
// vector<vector<ll>> dp(n + 1, vector<ll>(m + 1, -1));
// vector<vector<ll>>scc(n + 1, vector<ll>(m + 1, -1));
// vector<ll> sz(n * m + 1);
// ll cnt = 0;
// function<void(ll, ll)> fdfs = [&](ll x, ll y) -> void {
// if (x <= 0 || y <= 0 || x > n || y >m) {
// sz[cnt] = 0;
// return;
// }
// if (scc[x][y] != -1)return;
// scc[x][y] = cnt;
// sz[cnt]++;
// ll dx = 0, dy = 0;
// if (f[x][y] == 'l')dx = 0, dy = -1;
// if (f[x][y] == 'u')dx = -1, dy = 0;
// if (f[x][y] == 'r')dx = 0, dy = 1;
// if (f[x][y] == 'd')dx = 1, dy = 0;
// fdfs(x + dx * a[x][y], y + dy * a[x][y]);
// };
// function<ll(ll, ll)> dfs = [&](ll x, ll y) -> ll {
// if (x < 0 || y < 0 || x > n || y >m)return 0;
// ll& ans = dp[x][y];
// if (sz[scc[x][y]] != 0) {
// return ans = sz[scc[x][y]];
// }
// if (ans != -1)return ans;
// ans = 0;
// ll dx = 0, dy = 0;
// if (f[x][y] == 'l')dx = 0, dy = -1;
// if (f[x][y] == 'u')dx = -1, dy = 0;
// if (f[x][y] == 'r')dx = 0, dy = 1;
// if (f[x][y] == 'd')dx = 1, dy = 0;
// ans = dfs(x + dx * a[x][y], y + dy * a[x][y]) + 1;
// //cout << x << " " << y << " " << ans << endl;
// return ans;
// };
// for (ll i = 1; i <= n; i++) {
// for (ll j = 1; j <= m; j++) {
// if (scc[i][j] == -1) {
// cnt++;
// fdfs(i, j);
// }
// }
// }
// ll ans = 0;
// for (ll i = 1; i <= n; i++) {
// for (ll j = 1; j <= m; j++) {
// ans = max(ans, dfs(i, j));
// //cout << dfs(i, j) << " ";
// }//cout << endl;
// }
// if (ans == n * m) {
// cout << "yes" << endl;
// }
// else cout << "no" << endl;
// }
//}
// AC
//#include<bits/stdc++.h>
//using namespace std;
//typedef long long ll;
//typedef long double ld;
//#define endl '\n'
//const ll mod = 1e9 + 7;
//ll T;
//ll n, m;
//int main()//B
//{
// ios::sync_with_stdio(0);
// cin.tie(0);
// cout.tie(0);
// ll T; cin >> T;
// while (T--) {
// cin >> n >> m;
// vector<vector<char>>f(n + 1, vector<char>(m + 1));
// for (ll i = 1; i <= n; i++) {
// for (ll j = 1; j <= m; j++) {
// cin >> f[i][j];
// }
// }
// vector<vector<ll>>a(n + 1, vector<ll>(m + 1));
// for (ll i = 1; i <= n; i++) {
// for (ll j = 1; j <= m; j++) {
// cin >> a[i][j];
// }
// }
// vector<vector<ll>>c(n + 1, vector<ll>(m + 1));
// for (ll x = 1; x <= n; x++) {
// for (ll y = 1; y <= m; y++) {
// ll dx = 0, dy = 0;
// if (f[x][y] == 'l')dx = 0, dy = -1;
// if (f[x][y] == 'u')dx = -1, dy = 0;
// if (f[x][y] == 'r')dx = 0, dy = 1;
// if (f[x][y] == 'd')dx = 1, dy = 0;
// ll tx = x + dx * a[x][y], ty = y + dy * a[x][y];
// if (tx < 0 || ty < 0 || tx > n || ty >m)continue;
// c[tx][ty]++;
// }
// }
// ll bx = 1, by = 1;
// for (ll x = 1; x <= n; x++) {
// for (ll y = 1; y <= m; y++) {
// if (c[x][y] == 0) {
// bx = x;
// by = y;
// }
// }
// }
// vector<vector<bool>> dp(n + 1, vector<bool>(m + 1));
// function<void(ll, ll)> dfs = [&](ll x, ll y) -> void {
// if (x <= 0 || y <= 0 || x > n || y >m)return;
// if (dp[x][y])return;
// dp[x][y] = true;
// ll dx = 0, dy = 0;
// if (f[x][y] == 'l')dx = 0, dy = -1;
// if (f[x][y] == 'u')dx = -1, dy = 0;
// if (f[x][y] == 'r')dx = 0, dy = 1;
// if (f[x][y] == 'd')dx = 1, dy = 0;
// dfs(x + dx * a[x][y], y + dy * a[x][y]);
// };
// bool flag = true;
// dfs(bx, by);
// for (ll i = 1; i <= n; i++) {
// for (ll j = 1; j <= m; j++) {
// //cout << dp[i][j] << " ";
// if (!dp[i][j])flag = false;
// }//cout << endl;
// }
// if (flag) {
// cout << "Yes" << endl;
// }
// else cout << "No" << endl;
// }
//}
//#include<bits/stdc++.h>
//using namespace std;
//typedef long long ll;
//typedef long double ld;
//#define endl '\n'
//const ll mod = 1e9 + 7;
//ll T;
//ll n, m;
//int main()
//{
// ios::sync_with_stdio(0);
// cin.tie(0);
// cout.tie(0);
// ll T; cin >> T;
// while (T--) {
// cin >> n >> m;
// vector<vector<char>>f(n + 1, vector<char>(m + 1));
// for (ll i = 1; i <= n; i++) {
// for (ll j = 1; j <= m; j++) {
// cin >> f[i][j];
// }
// }
// vector<vector<ll>>a(n + 1, vector<ll>(m + 1));
// for (ll i = 1; i <= n; i++) {
// for (ll j = 1; j <= m; j++) {
// cin >> a[i][j];
// }
// }
// vector<vector<ll>>c(n + 1, vector<ll>(m + 1));
// for (ll x = 1; x <= n; x++) {
// for (ll y = 1; y <= m; y++) {
// ll dx = 0, dy = 0;
// if (f[x][y] == 'l')dx = 0, dy = -1;
// if (f[x][y] == 'u')dx = -1, dy = 0;
// if (f[x][y] == 'r')dx = 0, dy = 1;
// if (f[x][y] == 'd')dx = 1, dy = 0;
// ll tx = x + dx * a[x][y], ty = y + dy * a[x][y];
// if (tx < 0 || ty < 0 || tx > n || ty >m)continue;
// c[tx][ty]++;
// }
// }
// ll bx = 1, by = 1;
// for (ll x = 1; x <= n; x++) {
// for (ll y = 1; y <= m; y++) {
// if (c[x][y] == 0) {
// bx = x;
// by = y;
// }
// }
// }
// vector<vector<ll>> dp(n + 1, vector<ll>(m + 1, -1));
// function<ll(ll, ll)> dfs = [&](ll x, ll y) -> ll {
// if (x <= 0 || y <= 0 || x > n || y >m)return 0;
// ll& ans = dp[x][y];
// if (ans != -1)return ans;
// ans = 0;
// ll dx = 0, dy = 0;
// if (f[x][y] == 'l')dx = 0, dy = -1;
// if (f[x][y] == 'u')dx = -1, dy = 0;
// if (f[x][y] == 'r')dx = 0, dy = 1;
// if (f[x][y] == 'd')dx = 1, dy = 0;
// ans = dfs(x + dx * a[x][y], y + dy * a[x][y]) + 1;
// //cout << x << " " << y << " " << ans << endl;
// return ans;
// };
// bool flag = true;
// if (dfs(bx, by) != n * m)flag = false;
// if (flag) {
// cout << "Yes" << endl;
// }
// else cout << "No" << endl;
// }
//}
//#include<bits/stdc++.h>
//using namespace std;
//typedef long long ll;
//typedef long double ld;
//#define endl '\n'
//const ll mod = 1e9 + 7;
//ll T;
//ll n, m;
//ll x, y, z;
//int main()
//{
// ios::sync_with_stdio(0);
// cin.tie(0);
// cout.tie(0);
// ll T; cin >> T;
// while (T--) {
// cin >> x >> y >> z;
// ll d = x + y - z;
// if (d == 0)cout << (ll)1e9 << endl;
// else if (d <= z || y < z)cout << -1 << endl;
// else cout << d << endl;
// }
//}
//#include<bits/stdc++.h>
//using namespace std;
//typedef long long ll;
//typedef long double ld;
//#define endl '\n'
//const ll mod = 1e9 + 7;
//ll T;
//ll n, k;
//string s;
//bool check(ll x) {
// ll cnt = 0;
// for (ll i = 0; i < s.size(); i++) {
// if (s[i] == '1') {
// if (x == 0)return false;
// cnt++;
// i += x - 1;
// }
// }
// return cnt <= k;
//}
//int main()
//{
// ios::sync_with_stdio(0);
// cin.tie(0);
// cout.tie(0);
// ll T; cin >> T;
// while (T--) {
// cin >> n >> k;
// cin >> s;
// ll l = -1, r = 2e5 + 5;
// while (l < r - 1) {
// ll mid = (l + r) >> 1;
// if (check(mid)) r = mid;
// else l = mid;
// }
// cout << r << endl;
// }
//}
//#include<bits/stdc++.h>
//using namespace std;
//typedef long long ll;
//typedef long double ld;
//#define endl '\n'
//const ll mod = 1e9 + 7;
//ll T;
//int main()//C读错
//{
// ios::sync_with_stdio(0);
// cin.tie(0);
// cout.tie(0);
// ll T; cin >> T;
// while (T--) {
// string s; cin >> s;
// ll now = 0;
// ll cnt = 0;
// ll ans = 0;
// for (ll i = 0; i < s.size(); i++) {
// if (now == 0) {
// if (s[i] == '6' || s[i] == '9') now = 2, cnt = 1;
// else if (s[i] == '8' || s[i] == '0') now = 1, cnt = 1;
// else now = 0, cnt = 0;
// }
// else {
// cnt++;
// if(s[i] == '6' || s[i] == '9') now = now * 2 * cnt;
// else if(s[i] == '8' || s[i] == '0') now = now * cnt;
// else {
// ans += now;
// now = 0, cnt = 0;
// }
// }
// cout << now << " " << cnt << endl;
// }
// ans += now;
// cout << ans << endl;
// }
//}
//#include<bits/stdc++.h>
//using namespace std;
//typedef long long ll;
//typedef long double ld;
//#define endl '\n'
//const ll mod = 1e9 + 7;
//ll T;
//int main()
//{
// ios::sync_with_stdio(0);
// cin.tie(0);
// cout.tie(0);
// ll T; cin >> T;
// while (T--) {
// string s; cin >> s;
// ll now = 0;
// ll cnt = 0;
// ll ans = 0;
// for (ll i = 0; i < s.size(); i++) {
//
// }
// ans += now;
// cout << ans << endl;
// }
//}
//#include<bits/stdc++.h>
//using namespace std;
//typedef long long ll;
//typedef long double ld;
//#define endl '\n'
//const ll mod = 1e9 + 7;
//const ll maxn = 2e5 + 5;
//ll T;
//ll n;
//ll l[maxn], r[maxn];
//int main()
//{
// ios::sync_with_stdio(0);
// cin.tie(0);
// cout.tie(0);
// ll T; cin >> T;
// while (T--) {
// cin >> n;
// for (ll i = 1; i <= n; i++) cin >> l[i] >> r[i];
// ll ans = 0;
// vector<ll>bas(n + 1);
// vector<bool>pass(n + 1);
// for (ll i = 32; i >= 0; i--) {
// bool flag = true;
// for (ll j = 1; j <= n; j++) {
// if (pass[j])continue;
// ll L = (1ll << i) + bas[j], R = (1ll << (i + 1)) - 1 + bas[j];
// if (l[j] > R || r[j] < L) flag = false;
// }
// if (flag) {
// for (ll j = 1; j <= n; j++) {
// bas[j] += 1ll << i;
// }
// ans += 1ll << i;
// }
// else {
// for (ll j = 1; j <= n; j++) {
// ll t = (1ll << i) - 1 + bas[j];
// if (l[j] <= t && r[j] >= t)pass[j] = true;
// else {
// if (r[j] < t)continue;
// else {
// bas[j] += 1ll << i;
// }
// }
// }
// }
// }
// cout << ans << endl;
// }
//}
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
#define endl '\n'
const ll mod = 1e9 + 7;
const ll maxn = 2e5 + 5;
ll T;
ll n;
ll l[maxn], r[maxn];
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
ll T; cin >> T;
while (T--) {
string s;
cin >> s;
vector<string>v;
string now;
ll ans = 0;
for (ll i = 0; i < s.size(); i++) {
if (s[i] == '6' || s[i] == '9' || s[i] == '8' || s[i] == '0') now += s[i];
else {
if (now.size())v.push_back(now);
now.clear();
}
}
if (now.size())v.push_back(now);
ll flag = 0;
for (auto it : v) {
vector<ll>c(15);
ans += it.size() * (it.size() - 1) / 2;
for (ll i = 0; i < it.size(); i++) {
ll t = it[i] - '0';
if (t == 6 || t == 9)ans++;
if (t == 0 || t == 8)flag = 1;
if (i > 0) {
if (it[i] == '6' && it[i - 1] == '9')flag = 1;
if (it[i] == '9' && it[i - 1] == '6')flag = 1;
}
if (t == 6)ans -= c[9];
else if (t == 9)ans -= c[6];
else if (t == 8)ans -= c[8];
else if (t == 0)ans -= c[0];
c[t]++;
}
}
ans += flag;
cout << ans << endl;
}
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 0
Wrong Answer
time: 0ms
memory: 3580kb
input:
2 3 0 8 2 6 3 9 1 1 100
output:
0 1
result:
wrong answer 1st numbers differ - expected: '6', found: '0'