其实感觉这道题在D简单了(但我都没做到这一题,路径最多的方式只有一种,将所有的边都走一遍,从第一行开始,向右走到头,然后向左回来,向下一格,向右走到头,然后上下左重复直到第一列,如此重复直到最后一行,最后一步为向上到第一行第一列,注意输出的时候要判断一下0的情况

#include<bits/stdc++.h>
using namespace std;
#define lowbit(x) ((x)&(-x))
typedef long long LL; void run_case() {
int n, m, k;
cin >> n >> m >> k;
vector<pair<int,string>> store, ans;
int cnt = ;
for(int i = ; i <= n; ++i) {
store.push_back(make_pair(m-, "R"));
cnt += store.back().first * store.back().second.size();
if(i == ) store.push_back(make_pair(m-, "L"));
else store.push_back(make_pair(m-, "UDL"));
cnt += store.back().first * store.back().second.size();
if(i == n) store.push_back(make_pair(n-, "U"));
else store.push_back(make_pair(, "D"));
cnt += store.back().first * store.back().second.size();
}
if(cnt < k) {
cout << "NO\n";
return;
}
while(cnt > k) {
string now = store.back().second;
int cur = store.back().first*now.size();
store.pop_back();
cnt -= cur;
if(cnt >= k) continue;
cur = k - cnt;
if(cur / now.size()) store.push_back(make_pair(cur/now.size(), now));
now.resize(cur%now.size());
if(now.size()) store.push_back(make_pair(, now));
cnt = k;
}
cout << "YES\n";
for(auto i : store) {
if(i.first) ans.push_back(i);
}
cout << ans.size() << "\n";
for(auto i : ans) {
cout << i.first << " " << i.second << "\n";
}
} int main() {
ios::sync_with_stdio(false), cin.tie();
//cout.setf(ios_base::showpoint);cout.precision(10);
//int t; cin >> t;
//while(t--)
run_case();
cout.flush();
return ;
}

Codeforces1301D的更多相关文章

  1. Codeforces1301D Time to Run

    (搬运一下部分官方题解) Description link 或者洛谷link 到时候就有中文翻译了,不过这个题机翻没毛病 Solution 首先这是一道模拟题-- 不要管题目中的循环移动的问题,直接按 ...

随机推荐

  1. 对DensePose: Dense Human Pose Estimation In The Wild的理解

    研究方法 通过完全卷积学习从图像像素到密集模板网格的映射.将此任务作为一个回归问题,并利用手动注释的面部标注来训练我们的网络.使用这样的标注,在三维对象模板和输入图像之间,建立密集的对应领域,然后作为 ...

  2. Nexus:hardware type changed to No-Transceiver

    如下是相关的案例: 1.N5K & Cat3750 较新版本的NX-OS在N5K上支持1G或10G,但N5K不支持auto-speed sensing 如下是故障信息的体现:3750和N5K之 ...

  3. Abaqus 子模型法 和 子结构法

    目录 1 子模型法 1.2 子模型法应用考虑因素 1.3 子模型法关键技术 1.3.1 单元选择 1.3.2 驱动变量 1.3.3 链接整体模型和子模型 1.4 仿真过程 1.4.1 问题描述 1.4 ...

  4. TM1638控制

    原理图图纸: 显示控制与读按键与寄存器的对应 驱动代码:码云:

  5. bfs迷宫

    链接:https://ac.nowcoder.com/acm/contest/338/BSleeping is a favorite of little bearBaby, because the w ...

  6. 命令行选项解析函数getopt()

    1.定义: int getopt(int argc, char * const argv[], const char *optstring); 2.描述: getopt是用来解析命令行选项参数的,但是 ...

  7. MockMVC - 基于RESTful风格的Springboot,SpringMVC的测试

    MockMVC - 基于RESTful风格的SpringMVC的测试 对于前后端分离的项目而言,无法直接从前端静态代码中测试接口的正确性,因此可以通过MockMVC来模拟HTTP请求.基于RESTfu ...

  8. Ubuntu各个版本的镜像下载地址

    http://mirrors.melbourne.co.uk/ubuntu-releases/

  9. Node.js介绍、优势、用途

    一.Node.js介绍Node.js是一个javascript运行环境.它让javascript可以开发后端程序,实现几乎其他后端语言实现的所有功能,可以与PHP.Java.Python..NET.R ...

  10. vs2017 vs2019配置sqlite3连接引擎(驱动)指南(二)vs2019续集

    在写完上一篇博客后,一觉醒来,又又又又不行了,介绍一个终极大招,如果你的fuck vs又提示无法打开sqlite3.h的问题 环境win10  vs2019 debug x86 实在没心情写文字了,直 ...