欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

Codeforces Round #265 (Div. 2)_html/css_WEB-ITnose

程序员文章站 2022-05-22 17:13:22
...
Codeforces Round #265 (Div. 2)

题目链接

A:把数字变换后比较一下几个不一样即可

B:连续2个以上0当作一次操作,开头的0和结尾的0可以忽略

C:贪心从末尾去构造,由于保证一开始是回文,所以保证修改后出现回文只可能为长度2或3的,这样的话判断复杂度就很小了

D:暴力枚举情况,然后判断

E:把操作逆过来处理出每个数字对应的位数和相应数字,然后在for一遍计算答案即可

代码:

A:

#include #include int n, num[105], sb[105];char s[105];int main() {    scanf("%d", &n);    scanf("%s", s);    for (int i = 0; i   
B:

#include #include const int N = 1005;int n, num[N];int solve() {	int ans = 0;	int s = 0, e = n - 1;	while (num[s] == 0 && s = 0) e--;	for (int i = s ; i   
C:

#include #include #include using namespace std;const int N = 1005;int n, p;char str[N];bool solve(int u) {	if (u = 0 && str[u] == str[u - 1]) return solve(u);		if (u - 2 >= 0 && str[u] == str[u - 2]) return solve(u);		return true;	}}int main() {	scanf("%d%d", &n, &p);	scanf("%s", str);	if (solve(n - 1)) printf("%s\n", str);	else printf("NO\n");	return 0;}

D:

#include #include #include #include #include #include using namespace std;struct Point {	int v[3];	void read() {		for (int i = 0; i   
E:

#include #include #include #include using namespace std;typedef long long ll;const ll MOD = 1000000007;const int N = 100005;char str[N], sss[N];int n;ll pow_mod(ll x, ll k) {    ll ans = 1;    while (k) {        if (k&1) ans = (ans * x) % MOD;        x = x * x % MOD;        k >>= 1;    }    return ans;}ll v[15], l[15];ll idx(char c) {    return c - '0';}struct State {    ll u;    vector v;    void init(char *str) {        int len = strlen(str);        u = idx(str[0]);        v.clear();        for (int i = 3; i = 0; i--) {        ll lt = 0, vt = 0;        for (int j = 0; j