您的位置:首页 > 科技 > IT业 > 工作祝福语_封面设计模板_seo霸屏软件_看广告赚钱

工作祝福语_封面设计模板_seo霸屏软件_看广告赚钱

2024/12/25 1:20:05 来源:https://blog.csdn.net/2303_80261633/article/details/143645125  浏览:    关键词:工作祝福语_封面设计模板_seo霸屏软件_看广告赚钱
工作祝福语_封面设计模板_seo霸屏软件_看广告赚钱

题目链接

A. Quintomania

题意

在这里插入图片描述

思路

模拟即可

示例代码

void solve() {int n;cin >> n;vector<int>arr(n);fer(i, 0 ,n) cin >> arr[i];fer(i, 1, n){if(abs(arr[i] - arr[i - 1]) != 5 && abs(arr[i] - arr[i - 1]) != 7){cout << "NO" << '\n';return;}}cout << "YES" << '\n';
}

B. Startup

题意

在这里插入图片描述

输入

在这里插入图片描述

输出

在这里插入图片描述

思路

哈希表(数组哈希或者map),需要注意计算ans时的边界(计算多少个)

示例代码

void solve() {int n, k;cin >> n >> k;int *arr = new int[max(n, k) + 2]{};fer(i, 0, k){int b, c;cin >> b >> c;arr[b] += c;}sort(arr, arr + max(n, k) + 2, [&](int a, int b){return a > b;});int ans = 0;fer(i, 0, n) ans += arr[i];cout << ans << '\n';
}
void solve() {int n, k;cin >> n >> k;map<int, int>mp;fer(i, 0, k){int b, c;cin >> b >> c;mp[b] += c;}vector<pii>arr(all(mp));sort(all(arr), [&](pii a, pii b){return a.second > b.second;});int ans = 0;fer(i, 0, min((int)arr.size(), n))ans += arr[i].second;cout << ans << '\n';
}

C. Anya and 1100

题意

在这里插入图片描述

输入

在这里插入图片描述

输出

在这里插入图片描述

思路

先预处理包含的1100的个数,然后计算在改变位置改变后对改变前的影响(可以分别计算在改变位置处1100的个数,计算差值),注意遍历的边界范围

示例代码

void solve() {string s;cin >> s;int q;cin >> q;int cnt = 0;fer(i, 0, s.size() - 3){if(s.substr(i, 4) == "1100") cnt++;}while(q--){int ind, v;cin >> ind >> v;ind--;int cnt1 = 0, cnt2 = 0;// 改变前fer(i, max(0, ind - 3), min((int)s.size() - 3, ind + 1)){if(s.substr(i, 4) == "1100") cnt1++;}// 改变后s[ind] = char(v + '0');fer(i, max(0, ind - 3), min((int)s.size() - 3, ind + 1)){if(s.substr(i, 4) == "1100") cnt2++;}cnt += cnt2 - cnt1;if(cnt >= 1) cout << "YES" << '\n';else cout << "NO" << '\n';}
}

D. I Love 1543

题意

在这里插入图片描述

输入

在这里插入图片描述

输出

在这里插入图片描述

样例输入及输出

在这里插入图片描述

思路

与蛇形填数思路一致,用偏移量法求取每一个外围的字符串,统计这个字符串在循环移位后包含1543子串的最大个数,加到res中输出。注意边界的判断。

示例代码

int dx[] = {0, 1, 0, -1};
int dy[] = {1, 0, -1, 0};int finds(string s){int cnt = 0;fer(i, 0, s.size() - 3){if(s.substr(i, 4) == "1543")cnt++;}return cnt;
}void solve() {int n, m;cin >> n >> m;vector<vector<int>>arr(n, vector<int>(m));fer(i, 0, n){string s;cin >> s;fer(j, 0, s.size())arr[i][j] = (int)(s[j] - '0');}int c = 0;int res = 0;int nn = n, mm = m;while(n && m){string s;int x = c, y = c, d = 0;fer(i, 0, 2 * (n + m - 2)){s += to_string(arr[x][y]);int a = x + dx[d], b = y + dy[d];if(a < c || a >= nn - c || b < c || b >= mm - c){d = (d + 1) % 4;a = x + dx[d], b = y + dy[d];}x = a, y = b;}n -= 2, m -= 2;c ++;string s1 = s.substr(1) + s[0];string s2 = s1.substr(1) + s1[0];string s3 = s2.substr(1) + s2[0];res += max(finds(s), max(finds(s1), max(finds(s2), finds(s3))));}cout << res << '\n';
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com