首页 > 代码库 > Codeforces Round #424 (Div. 2) A-C
Codeforces Round #424 (Div. 2) A-C
A. Unimodal Array
水题
#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>#include <queue>#include <vector>#include <iomanip>#include <math.h>#include <map>using namespace std;#define FIN freopen("input.txt","r",stdin);#define FOUT freopen("output.txt","w",stdout);#define INFLL 0x3f3f3f3f3f3f3f#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1typedef long long LL;typedef pair<double, double> PII;const int maxn = 100 + 5;int a[maxn];int b[maxn];int main() { //FIN int n; cin >> n; for(int i = 1; i <= n; i++) cin >> a[i]; for(int i = 1; i <= n -1; i++) { if(a[i] - a[i + 1] > 0) b[i] = 1; else if(a[i] - a[i + 1] == 0) b[i] = 0; else if(a[i] - a[i + 1] < 0) b[i] = -1; } for(int i = 1; i <= n - 2; i++) { //cout << b[i]<<" "; if(b[i + 1] < b[i]) { cout <<"NO"<<endl; return 0; } } cout <<"YES"<<endl; return 0;}
B. Keyboard Layouts
比第一题还水...
#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>#include <queue>#include <vector>#include <iomanip>#include <math.h>#include <map>using namespace std;#define FIN freopen("input.txt","r",stdin);#define FOUT freopen("output.txt","w",stdout);#define INFLL 0x3f3f3f3f3f3f3f#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1typedef long long LL;typedef pair<double, double> PII;char s1[30];char s2[30];char s3[1005];int main() { //FIN cin >> s1; cin >> s2; cin >> s3; int len = strlen(s3); for(int i = 0; i < len; i++) { int flag = 0; if(s3[i] >= ‘0‘ && s3[i] <= ‘9‘) { cout << s3[i]; continue; } if(s3[i] >= ‘A‘ && s3[i] <= ‘Z‘) { flag = 1; s3[i] += 32; } for(int j = 0; j < 26; j++) { if(s1[j] == s3[i]) { if(flag) printf("%c", s2[j] - 32); else cout << s2[j] ; break; } } } return 0;}
C. Jury Marks
这题看了题解才会做 学会了一个新操作 unique
#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>#include <queue>#include <vector>#include <iomanip>#include <math.h>#include <map>using namespace std;#define FIN freopen("input.txt","r",stdin);#define FOUT freopen("output.txt","w",stdout);#define INFLL 0x3f3f3f3f3f3f3f#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1typedef long long LL;typedef pair<double, double> PII;const int maxn = 2000 + 5;int a[maxn];int b[maxn];int sum[maxn];vector<int> vec;map<int, int> mp;int main() { //FIN int n, k; scanf("%d%d", &k, &n); int x; for(int i = 1; i <= k; i++) { scanf("%d", &a[i]); sum[i] += sum[i - 1] + a[i]; } sort(sum + 1, sum + 1 + k); int len = unique(sum + 1, sum + 1 + k) - (sum + 1); for(int i = 1; i <= n; i++) { scanf("%d", &b[i]); for(int j = 1; j <= len; j++) { int tmp = b[i] - sum[j]; vec.push_back(tmp); } } sort(vec.begin(), vec.end()); for(int i = 0; i < vec.size(); i++) { mp[vec[i]]++; } int ans = 0; for(int i = 0; i < vec.size(); i++) { if(mp[vec[i]] >= n) { ans++; mp[vec[i]] = 0; } } printf("%d\n", ans); return 0;}
Codeforces Round #424 (Div. 2) A-C
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。