A Move Right(水)

字符串右移一位 然后在左边补0

void solve()
{string s;cin >> s;s = '0' + s;s.erase(s.end() - 1);cout << s;
}

B Unique Nicknames(读题)

Description:

​ 每个人有两个备选名字 然后要给每个人从这两个里选一个命名

​ 要求任一人的名字 不能跟其他人的备选名字相同

Solution:

​ map存一下每个名字出现的次数 如果说一个人的两个名字都是出现了两次以上的 那就不行

​ 如果说一个人的备选名字相同的话 只用存一次(自行编写数据hack可得)

Code:

map<string, int> mp;
vector<pair<string, string> > q;void solve()
{int n;cin >> n;string a, b;rep(i, 0, n){cin >> a >> b;q.pb({a, b});if(a == b)  mp[a] ++;else mp[a] ++; mp[b] ++;}bool ok = true;rep(i, 0, n)if(mp[q[i].fi] >= 2 && mp[q[i].se] >= 2)    ok = false;if(ok)  puts("Yes");else puts("No");
}

C 1 2 1 3 1 2 1(递归)

Description:

​ 给定s(n) 要求输出s(n-1) n s(n-1)

​ 当n == 1 输出1 当n == 2 输出 1 2 1

Solution:

​ 递归模拟题意即可

Code:

void f(int x)
{if(x == 1)    {cout << 1 << ' '; return;}f(x - 1);cout << x << ' ';f(x - 1);
}void solve()
{int n;cin >> n;f(n);
}

D Cylinder(模拟)

Description:

​ op1 在右端放入价值为x 数量为c的球 op2 从左端取出数量为c的球 并输出其价值和

Solution:

​ 先进先出 队列模拟即可 (队列里的元素是可以更改的 我sb了

Code:

queue<PII> q;
void solve()
{int Q;scanf("%d", &Q);int op, x, c;while(Q--){scanf("%d", &op);if(op == 1){scanf("%d%d", &x, &c); //fi: sum se: valq.push({c, x});}else {scanf("%d", &c);LL res = 0;while(c){LL d = c - q.front().fi < 0 ? c : q.front().fi; //特判一下就好q.front().fi -= d;c -= d;res += d * 1LL * q.front().se;if(q.front().fi == 0)   q.pop();}printf("%lld\n", res);}}
}

E Max Min(状压DP)

Description:

​ 给定数组长度为n的数组a 给定x 和 y

​ 要求寻找区间[l, r]的个数 区间要满足区间内所有元素小于等于x 大于等于y 且区间中必须存在x和y

Solution:

​ 首先定义一个dp数组 dp[i] [2] [2] 表示当前的右端点是i 然后区间内是否含有x 区间内是否含有y

​ 转移的时候呢 i可以向i+1转移 并i+1继承i中满足题意的状态 也就是区间上的连续的意思

​ 转移方程写为

rep(j, 0, 2)rep(k, 0, 2)dp[i][fx | j][fy | k] += dp[i - 1][j][k];

Code:

const int N = 200010;
int n, x, y, q[N], dp[N][2][2]; //以i为右端点的状态 1 1表示满足题意
LL res; void solve()
{scanf("%d%d%d", &n, &x, &y);rep(i, 1, n + 1)scanf("%d", &q[i]);dp[0][0][0] = 0;rep(i, 1, n + 1){if(q[i] < y || q[i] > x)    continue; //dp[i][1][1] = 0;区间无法连续了int fx = q[i] == x, fy = q[i] == y; //满足存在x或ydp[i][fs][ft] += 1;rep(j, 0, 2)rep(k, 0, 2)dp[i][j | fx][k | fy] += dp[i - 1][j][k]; //对于上一个状态而言 如果可以转移的话就相加res += dp[i][1][1]; //满足题意的情况}cout << res << endl;
}

AtCoder ABC 247相关推荐

  1. AtCoder ABC 250 总结

    AtCoder ABC 250 总结 总体 连续若干次一样的结果:30min 切前 4 题,剩下卡在 T5 这几次卡在 T5 都是一次比一次接近, 什么 dp 前缀和打挂,精度被卡,能水过的题连水法都 ...

  2. Atcoder abc 233 题解

    Atcoder abc 233 题解 A 10yen Stamp 答案就是两个数字的差/10之后上取整 记得判断res=0的情况就可以了 c++代码 #include<iostream> ...

  3. AtCoder ABC 127F Absolute Minima

    题目链接:https://atcoder.jp/contests/abc127/tasks/abc127_f 题目大意 初始状态下$f(x) = 0$,现在有 2 种模式的询问,第一种以"1 ...

  4. Atcoder abc A~E

    ABC 265 A~E A 题意:你要买 n 个苹果,买 1 个要 x 元,买 3 个要 y 元,问最少要花多少钱 解法:判断 3*x 是否小于 y,然后输出 Code : # include < ...

  5. AtCoder - ABC 167 - E(数学推理+组合数)

    E - Colorful Blocks 题意: 有 m 种颜色,给 n 个方块染色,可以不使用所有颜色,要求最多有 k 对相邻方块同色.问染色的总情况,最终结果模  998244353. 数据范围: ...

  6. AtCoder ABC 249

    A Jogging 没看清楚题 a不是移速 所以卡了十分钟 语法题 int main() {int a, b, c, d, e, f, x;cin >> a >> b > ...

  7. AtCoder ABC 128(C ~ E)

    C Switches(枚举 + 位运算) Description: ​ 有n盏灯和m组设定,要求输出同时符合m组设定的灯开关的方案数 ​ 设定:s_i中亮灯的数量%2 == p_i Solution: ...

  8. AtCoder - ABC 178 - C~F

    C - Ubiquity(容斥原理/DP) 题意: 求满足以下条件的长为 n 的不同序列的个数: 1.0 ≤  ≤9 2.序列中至少有一个 =0 3.序列中至少有一个 =9 答案对 +7 取模. 数据 ...

  9. AtCoder - ABC 170 - D(思维+数论)E(STL+模拟)

    D - Not Divisible 题意: 现有一个长度为 n 的序列 A,请你输出满足以下条件的所有整数  的数量: 对于每一个整数 j (1 ≤ j ≤ n且 i ≠ j) ,  ≠ 0 ( mo ...

最新文章

  1. python 测试linux dev文件,Linux测试开发人员要掌握的Linux命令有哪些?
  2. Spring boot ----RestTemplate学习笔记
  3. [LeetCode]题解(python):013-Roman to Integer
  4. 实战案例丨小型企业如何从IPv4迁移至IPv6
  5. 启明云端分享|盘一盘ESP32为啥那么惹人爱呢?
  6. Flask框架从入门到精通之参数配置(二)
  7. 数据分析必备:掌握这个R语言基础包1%的功能,你就很牛了
  8. 识别速度3.6ms/帧!人像抠图、工业质检、遥感识别,用这一个分割模型就够了...
  9. C#实现关机的两种方法
  10. 射雕zero找不到服务器,神秘领域《射雕ZERO》未揭秘场景盘点
  11. 计算机里一共录入多少个汉字,计算机操作员之汉字输入方法
  12. c语言无法定位程序输入点 于动态链接库,无法定位程序输入点 于动态链接库怎么办...
  13. Ignite VS Redis
  14. Windows资源管理器已停止工作的两种解决方法
  15. 在html中dd 是什么列表,html中dt dd
  16. Docker镜像常用命令
  17. 第4章第16节:图表:使用三维饼图制作年度销售额图表 [PowerPoint精美幻灯片实战教程]
  18. 中国电信天府热线数据中心
  19. 基于MATLAB的DTMF信号的仿真分析
  20. 【概率论】4-5:均值和中值(The Mean and the Median)

热门文章

  1. Compute Shader 语法及函数 Reference for HLSL
  2. 趣图:搞笑程序员表情包 | 这代码......辣眼睛.....
  3. 【web前端特效源码】Html5+css3+JavaScript实现计算器2功能+新拟态新拟物风格(Neumorphism)网页图标按钮效果~手把手教学~适合初学者~超简单~
  4. 一条很长很长的路...
  5. 陈永正:NBA中国团队比百度人贵16倍
  6. upc 货物运输 (good)
  7. 【ChatGPT提问技巧和各种资源帮找】
  8. 【代码随想录训练营】Day43-动态规划
  9. 哈夫曼树(赫夫曼树、最优树)详解
  10. 如何解决Proteus破解失败