QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#387076#6730. CoolbitsMayuriWA 0ms3580kbC++1411.8kb2024-04-12 01:34:342024-04-12 01:34:36

Judging History

你现在查看的是最新测评结果

  • [2024-04-12 01:34:36]
  • 评测
  • 测评结果:WA
  • 用时:0ms
  • 内存:3580kb
  • [2024-04-12 01:34:34]
  • 提交

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'