Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- using namespace std;
- vector< vector<int> > vec;
- void _draw() {
- for (int i = 0; i < vec.size(); ++i) {
- for (int i2 = 0; i2 < vec.at(i).size(); ++i2)
- cout << vec.at(i).at(i2) << " ";
- cout << endl;
- }
- }
- int main() {
- int a, temp1;
- cin >> a;
- for (int i = 0; i < a; ++i) {
- vector<int> temp;
- for (int i2 = 0; i2 < a; ++i2) {
- cin >> temp1;
- temp.push_back(temp1);
- }
- vec.push_back(temp);
- }
- for (int i = 1; i < a; ++i)
- vec.at(i).at(0) += vec.at(i-1).at(0);
- for (int i = 1; i < a; ++i)
- vec.at(0).at(i) += vec.at(0).at(i-1);
- for (int i = 1; i < a; ++i) {
- for (int i2 = 1; i2 < a; ++i2) {
- if (vec.at(i).at(i2-1) > vec.at(i-1).at(i2))
- vec.at(i).at(i2) += vec.at(i).at(i2-1);
- else
- vec.at(i).at(i2) += vec.at(i-1).at(i2);
- }
- }
- cout << vec.at(a-1).at(a-1) << endl;
- string s = "";
- cout << endl;
- //_draw();
- int x = a-1, y = a-1;
- while (x && y) {
- if (vec.at(x).at(y-1) > vec.at(x-1).at(y)) {
- y--;
- //cout << "Down." << endl;
- s = "R" + s;
- }
- else {
- x--;
- //cout << "Right." << endl;
- s = "D" + s;
- }
- }
- s = string(x, 'D') + s;
- s = string(y, 'R') + s;
- cout << s;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment