首页 > 其他 > 详细

Codeforces Round #675 (Div. 2)

时间:2020-10-05 11:24:26      阅读:68      评论:0      收藏:0      [点我收藏+]

题目链接:http://codeforces.com/contest/1422

A题

签到题

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll MODE = 1e9 + 7;
string s;
int main () {
	cin >> s;
	ll n = s.size();
	ll temp = 0; 
	for(int i = 0; i < n; ++i) {
		temp += s[i] - ‘0‘;
	}	
	ll po = 1;
	ll sum = 0;
	for(ll i = n - 1; i >= 0; --i) {
		ll x =s[i] - ‘0‘;
		temp -= x;
		sum += temp * (n - i) % MODE * po % MODE;  //之后 
		sum += x * i * (i + 1) / 2 % MODE * po % MODE; //算上这位 
		sum %= MODE;
		po *= 10;
		po %= MODE;
	}
	cout << sum << endl;
} 

 B题

思维题

对称四元组全部变成四个中第二大的数

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll get(ll a, ll b,ll c, ll d) {
	vector<ll> v(4);
	v[0] = a;
	v[1] = b;
	v[2] = c;
	v[3] = d;
	sort(v.begin(), v.end());
	return v[1];
} 
int main () {
	int t;
	cin >> t;
	while(t--) {
		ll v[110][110];
		int n, m;
		cin >> n >> m;
		ll sum = 0;
		for(int i = 0; i < n; ++i) {
			for(int j = 0; j < m; ++j) {
				cin >> v[i][j];
			}
		}
		for(int i = 0; i < n; ++i) {
			for(int j = 0; j < m; ++j) {
				sum += abs(v[i][j] - get(v[i][j], v[n - 1 - i][j], v[i][m - 1 - j], v[n - 1 -i][m - 1 - j]));
			}
		} 
		cout << sum << endl;
	}
} 

 C题

数论题

有点儿灵性得看出每一位对于答案的贡献

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll MODE = 1e9 + 7;
string s;
int main () {
	cin >> s;
	ll n = s.size();
	ll temp = 0; 
	for(int i = 0; i < n; ++i) {
		temp += s[i] - ‘0‘;
	}	
	ll po = 1;
	ll sum = 0;
	for(ll i = n - 1; i >= 0; --i) {
		ll x =s[i] - ‘0‘;
		temp -= x;
		sum += temp * (n - i) % MODE * po % MODE;  //temp代表的是x之前所有数的和,乘以po之后代表,对于其的贡献 
		sum += x * i * (i + 1) / 2 % MODE * po % MODE; //i(i+1)/2是求和。代表的是x选择后左边不同位数可以选择的情况总数 
		sum %= MODE;
		po *= 10;
		po %= MODE;
	}
	cout << sum << endl;
} 

 

Codeforces Round #675 (Div. 2)

原文:https://www.cnblogs.com/lightac/p/13769455.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!