Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int main() {
- char tmp1, tmp2;
- int xs, ys, xf, yf;
- cin >> tmp1 >> ys >> tmp2 >> yf;
- xs = tmp1 - 96; xf = tmp2 - 96;
- if (xs + ys == xf + yf) {
- // На одной главной диагонали
- if (ys > yf) {
- cout << ys-yf << "\n";
- for (int i = 0; i < ys-yf; ++i)
- cout << "RD\n";
- }
- else {
- cout << yf-ys << "\n";
- for (int i = 0; i < ys-yf; ++i)
- cout << "LU\n";
- }
- }
- if (xs - ys == xf - yf) {
- // На одной побочной диагонали
- if (xs > xf) {
- cout << xs-xf << "\n";
- for (int i = 0; i < xs-xf; ++i)
- cout << "LD\n";
- }
- else {
- cout << xf-xs << "\n";
- for (int i = 0; i < xs-xf; ++i)
- cout << "RU\n";
- }
- }
- if (xs == xf) {
- // На одной прямой (вертикальнойй)
- if (ys > yf) {
- cout << ys-yf << "\n";
- for (int i = 0; i < xs-xf; ++i)
- cout << "D\n";
- }
- else {
- cout << yf-ys << "\n";
- for (int i = 0; i < ys-yf; ++i)
- cout << "U\n";
- }
- }
- if (ys == yf) {
- // На одной прямой (горизонтльной)
- if (xs > xf) {
- cout << xs-xf << "\n";
- for (int i = 0; i < xs-xf; ++i)
- cout << "L\n";
- }
- else {
- cout << xf-xs << "\n";
- for (int i = 0; i < xs-xf; ++i)
- cout << "R\n";
- }
- }
- if (abs(xs - xf) < abs(ys - yf)) {
- // Быстрее выйти на прямую (вернитальную)
- if (ys < yf) {
- // Подъём
- if (xs > xf) {
- // Влево
- }
- else {
- // Вправо
- }
- }
- else {
- // Спуск
- if (xs > xf) {
- // Влево
- }
- else {
- // Вправо
- }
- }
- }
- if (abs(xs - xf) > abs(ys - yf)) {
- // Быстрее выйти на горизонтльную линию;
- }
- if (xs + xf > ys + yf) {
- // Быстрее выйти на побочную диагональ
- }
- if (ys + yf > xs + xf) {
- // Быстрее выйти на главную диагональ
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment