2019牛客寒假算法基础集训4
2019-02-03 01:02
357 查看
题解
A-Applese的取石子游戏
签到题,直接输出Applese即可,如果奇数项的和较大,先手就取第一个,这样每一次轮到后手都只能取到偶数项,反之同理签到题,直接输出Applese即可,\\如果奇数项的和较大,先手就取第一个,这样每一次轮到后手都只能取到偶数项,反之同理签到题,直接输出Applese即可,如果奇数项的和较大,先手就取第一个,这样每一次轮到后手都只能取到偶数项,反之同理
B-Applese走方格
按题意构造即可按题意构造即可按题意构造即可
#include <cstdio> int n, m; int main() { scanf("%d%d", &n, &m); if(n == 1) { if(m == 2) puts("RL"); else puts("-1"); } else if(m == 1) { if(n == 2) puts("DU"); else puts("-1"); } else if(n & 1 && m & 1) puts("-1"); else if(n & 1) { for(int i = 1; i < m; ++i) printf("R"); for(int i = 1; i < n; ++i) printf("D"); for(int i = 1; i < m; ++i) { printf("L"); for(int j = 1; j < n - 1; ++j) { if(i & 1) printf("U"); else printf("D"); } } printf("U\n"); } else { for(int i = 1; i < n; ++i) printf("D"); for(int i = 1; i < m; ++i) printf("R"); for(int i = 1; i < n; ++i) { printf("U"); for(int j = 1; j < m - 1; ++j) { if(i & 1) printf("L"); else printf("R"); } } printf("L\n"); } return 0; }
E-Applese涂颜色
显然有2n种涂色方法,考虑十进制快速幂显然有2^n种涂色方法,考虑十进制快速幂显然有2n种涂色方法,考虑十进制快速幂
#include <cstdio> #include <cstring> #define ll long long const int MAX_N = 1e5 + 5; const int mod = 1e9 + 7; ll mpow(ll a, ll n) { ll res = 1; for(; n; n >>= 1, a = a * a % mod) if(n & 1) res = res * a % mod; return res; } int main() { ll ans = 0; char a[MAX_N]; scanf("%s%*d", a); int len = strlen(a); for(int i = 0; i < len; ++i) { ans = (ans * 10 + a[i] - '0') % (mod - 1); } printf("%lld\n", mpow(2, ans)); return 0; }
I-Applese的回文串
如果这个串本身就是回文串,答案一定是Yes.否则我们只需要考虑串中对称的位置不相等的两个字符,分别尝试把它们删掉后判断一下是不是回文的就行了.如果这个串本身就是回文串,答案一定是Yes.\\ 否则我们只需要考虑串中对称的位置不相等的两个字符,\\分别尝试把它们删掉后判断一下是不是回文的就行了.如果这个串本身就是回文串,答案一定是Yes.否则我们只需要考虑串中对称的位置不相等的两个字符,分别尝试把它们删掉后判断一下是不是回文的就行了.
#include <iostream> using namespace std; const int MAX_N = 1e5 + 5; string s, t; int cnt; bool flag; bool check(string str) { int len = str.length(); int mid = (len + 1) / 2; for (int i = 0; i < mid; ++i) if(str[i] != str[len - 1 - i]) return false; return true; } int main() { ios::sync_with_stdio(false); cin.tie(0); cin >> s; int len = s.length(); if(check(s)) { puts("Yes"); return 0; } for(int i = 0; i < len; ++i) { if(s[i] != s[len - i -1]) { cnt = i; break; } } t = s; t.erase(cnt, 1); //cout << t << endl; if(check(t)) flag = true; t = s; t.erase(len - cnt - 1, 1); //cout << t << endl; if(check(t)) flag = true; if(flag) puts("Yes"); else puts("No"); return 0; }
J-Applese的减肥计划
签到题,余弦定理,cmath库有自带π值M_PI签到题,余弦定理,cmath库有自带\pi 值M\_PI签到题,余弦定理,cmath库有自带π值M_PI
#include <cstdio> #include <cmath> #define pi acos(-1.0) int f1, f2, a; double ans; int main() { scanf("%d%d%d", &f1, &f2, &a); ans = sqrt(f1 * f1 + f2 * f2 + 2 * f1 * f2 * cos(1.0 * a / 180 * pi)); printf("%7lf\n", ans); return 0; }
相关文章推荐
- 2019牛客寒假算法基础集训5
- 牛客寒假算法基础集训营1 B 小a与"204"
- 19牛客寒假算法基础集训营1小结
- 牛客寒假算法基础集训营1 小a与黄金街道
- 牛客寒假算法基础集训营2 解题报告
- 牛客寒假算法基础集训营1---小a与黄金街道( 欧拉函数)
- 牛客寒假算法基础集训营2 处女座与复读机
- 牛客寒假算法基础集训营1B题
- 牛客寒假算法基础集训营2 处女座的签到题 (nth_element)
- 牛客寒假算法基础集训营2 处女座的测验(一)质数
- 牛客寒假算法基础集训营1 小a与黄金街道 (欧拉函数,欧拉降幂)
- 牛客寒假算法基础集训营1-小a与"204"
- 牛客寒假算法基础集训营1 小a的排列
- 牛客寒假算法基础集训营1 小a与星际探索
- 牛客寒假算法基础集训营3
- 牛客寒假算法基础算法训练营2
- 牛客寒假算法基础集训营1 解题报告
- 牛客寒假算法基础集训营1【题解】
- 19牛客寒假算法基础集训营2小结
- CDU集训代码:基础算法和数据结构2