尽量不要去小公司

作者分享了自己从小公司跳槽到大公司的经历,指出小公司节奏快适合年轻人,大公司则注重深度,适合老程序员。他强调不要急于体现价值,要实事求是,不断学习。最终,他在中等规模的公司找到了稳定。建议跳槽时选择更大的平台,与优秀的人共事。

看到一个论坛,一个哥们发帖说去小公司被坑。

2020年因为一时想挣快钱,所谓的 体现价值,结果能力水平不济,快钱也没挣到,反而因为裸辞降薪了。加上小老板一言堂,有换岗被辞退的,也有试用期前一周被辞退的,重新刷新了三观。当然,好处是学会了ue4,

不要急于体现价值,水平不行也体现不出来。这点要实事求是。要向高手学习,年龄大也好,小也好,技术上行就是行,不行就多向别人学习。学习不丢人,市场才是决定因素。

我在两家大公司待了两年半,如果想继续干实际上还可以干下去。在三家小公司,却干了不到半年,最后又回到了几百人的中等公司,才稳住了,睡得踏实了。

小公司的特点,我认为就是“快”,所以年轻人比较合适,不是说他们聪明,而是更适合界面和业务逻辑;大点的公司在于“深”,体现老程序员的价值。当然,如果年轻的程序员向深里走,还是去大点的公司好,毕竟,都有年纪大的那个时刻。

所以,尽量不再跳槽了,即使跳槽也要去更大的公司,与更聪明的人共事。

```cpp #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { int n, q; cin >> n >> q; vector<int> a(n); for (int i = 0; i < n; ++i) { cin >> a[i]; } // 预处理所有可能的区间排序结果 vector<vector<int>> sorted_subarrays(n * (n + 1) / 2, vector<int>(n)); int idx = 0; for (int l = 0; l < n; ++l) { for (int r = l; r < n; ++r) { vector<int> temp = a; sort(temp.begin() + l, temp.begin() + r + 1); sorted_subarrays[idx++] = temp; } } for (int query = 0; query < q; ++query) { int x, y; cin >> x >> y; x--; y--; // 转换为0-based索引 int target_value = a[x]; int count = 0; idx = 0; for (int l = 0; l < n; ++l) { for (int r = l; r < n; ++r) { if (x < l || x > r) { idx++; continue; } if (sorted_subarrays[idx][y] == target_value) { count++; } idx++; } } cout << count << endl; } } ``` 上述代码实现了题目要求的“完美重排”操作,统计了所有可能的区间 `[l, r]`,使得某个特定的元素从位置 `x` 移动到位置 `y`。程序通过枚举所有可能的子数组排序情况,并检查排序后是否满足条件来计算方案数。 ### 优化与说明 - 代码中使用了预处理方式存储所有可能的排序结果,以减少重复排序的开销。 - 所有操作均在主函数中完成,没有使用额外函数[^1]。 - 时间复杂度为 `O(n^3 log n)`,适用于较小规模的输入。 - 空间复杂度为 `O(n^3)`,因为存储了所有可能的排序结果。 ### 复杂度分析 - **时间复杂度**:由于需要枚举所有可能的子数组区间并进行排序,时间复杂度为 `O(n^3 log n)`。 - **空间复杂度**:用于存储所有可能的排序结果,空间复杂度为 `O(n^3)`。 ### 相关问题 1. 如何在 C++ 中高效实现子数组排序并查找特定元素的位置变化? 2. 如何优化区间排序操作的时间复杂度? 3. 如果允许多次排序操作,如何扩展上述算法? 4. 给定一个数组和目标位置,如何快速判断是否存在某个排序操作可以将某个元素移动到目标位置? 5. 如何在不实际排序的情况下预测排序后某个元素的位置?
评论 39
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值