2.25 做题

cpp 复制代码
#include<iostream>
#include<vector>
using namespace std;
#define LL long long;
int main()
{
	int row, col; cin >> row >> col;
	vector<vector<int>>arr(row + 5, vector<int>(col + 5));
	for (int i = 0; i < row; i++)
	{
		for (int j = 0; j < col; j++)
		{
			cin >> arr[i][j];
		}
	}
	int top = 0;
	int bottom = row-1;
	int left = 0;
	int right = col - 1;
	while (top <= bottom && left <= right)
	{
		for (int i = left; i <= right; i++)
		{
			cout << arr[top][i] << endl;
		}
		top++;
		for (int i = top; i <= bottom; i++)
		{
			cout << arr[i][right] << endl;
		}
		right--;
		if (top <= bottom)
		{
			for (int i = right; i >= left; i--)
			{
				cout << arr[bottom][i] << endl;
			}
		}
		bottom--;
		if (left <= right)
		{
			for (int i = bottom; i >= top; i--)
			{
				cout << arr[i][left] << endl;
			}
		}
		left++;
	}
	return 0;
}

思路:环形输出,四个for循环,第一个for是上面的从左到右,第二个是右边从上到下,第三个是底下从右到左,第四个是左边的从下到上,一个圈循环完毕,while里面的条件是保证至少有一列和一行,但是前两个for之后,行和列都减少了一个,不能保证还有,所以后两个循环要加if条件

cpp 复制代码
#include <iostream>
#include <string>
#include <vector>
using namespace std;
const int MOD = 10000;
int main() {
    string s;
    cin >> s;
    vector<long long> st;
    long long num = 0;
    char last_op = '+';
    for (int i = 0; i <= s.size(); ++i) {
        if (i < s.size() && isdigit(s[i])) {
            num = num * 10 + (s[i] - '0');
            num %= MOD;
        } else {
            if (last_op == '+') {
                st.push_back(num);
            } else if (last_op == '*') {
                long long top = st.back();
                st.pop_back();
                st.push_back((top * num) % MOD);
            }
            num = 0;
            if (i < s.size()) {
                last_op = s[i];
            }
        }
    }
    long long ans = 0;
    for (int i = 0; i < st.size(); ++i) {
        ans = (ans + st[i]) % MOD;
    }
    cout << ans << endl;
    return 0;
}

就是先把所有数字放进栈中,如果有乘法,先乘后入栈,入栈后全部遍历相加,最后取模

相关推荐
岛雨QA1 小时前
树结构的基础部分「Java数据结构与算法学习笔记9」
数据结构·算法
Frostnova丶2 小时前
LeetCode 1356. 根据数字二进制下1的数目排序
数据结构·算法·leetcode
GEO行业研究员2 小时前
AI是否正在重构个体在健康相关场景中的决策路径——基于系统建模与决策链条结构分析的讨论
人工智能·算法·重构·geo优化·医疗geo·医疗geo优化
岛雨QA2 小时前
哈希表「Java数据结构与算法学习笔记8」
数据结构·算法
独自破碎E2 小时前
【DFS】BISHI76 迷宫寻路
算法·深度优先
寄存器漫游者2 小时前
Linux 线程间通信
数据库·算法
岛雨QA2 小时前
查找算法「Java数据结构与算法学习笔记7」
数据结构·算法
宝贝儿好2 小时前
【强化学习】第十章:连续动作空间强化学习:随机高斯策略、DPG算法
人工智能·python·深度学习·算法·机器人
isyoungboy2 小时前
从图像中提取亚像素边缘点
算法