数字游戏后缀积问题,一个数学分析问题
Posted 凌晨five点
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数字游戏后缀积问题,一个数学分析问题相关的知识,希望对你有一定的参考价值。
此题着重考虑每加上一个数会对,前面得-+0产生什么样的影响。分析可知插入0为特殊点。然后就可以通过代码实现。
1 1 0 1 3 41 -1等模拟运行下就能法现其规律。
1 #include <algorithm> 2 #include <iostream> 3 #include <cstring> 4 5 using namespace std; 6 typedef long long LL; 7 LL _1 = 0, _0 = 0, __1 = 0; 8 LL cnt1, last, cnt2; 9 10 void add(int num, int pos){ 11 12 if(num == 0){ 13 _0 += pos; 14 last = pos; 15 cnt1 = cnt2 = 0; 16 return; 17 } 18 if(num > 0){ 19 _1 += (++cnt1), _0 += last, __1 += cnt2; 20 return; 21 } 22 _1 += cnt2, __1 += (++cnt1), _0 += last; 23 swap(cnt1, cnt2); 24 } 25 26 int main(){ 27 int n, m; 28 cin >> n >> m; 29 int cnt = 0; 30 for(int i = 0; i < n; ++ i){ 31 cnt++; 32 int num; 33 cin >> num; 34 add(num, cnt); 35 } 36 37 while(m--){ 38 int op; 39 cin >> op; 40 if(op == 2) cout << _1 << " " << _0 << " " << __1 << endl; 41 else{ 42 int t; 43 cin >> n; 44 for(int i = 0; i < n; ++ i){ 45 int num; 46 cnt++; 47 cin >> num; 48 add(num, cnt); 49 } 50 } 51 } 52 return 0; 53 54 }
以上是关于数字游戏后缀积问题,一个数学分析问题的主要内容,如果未能解决你的问题,请参考以下文章
华为OD机试真题 JS 实现相同数字的积木游戏2022.11 Q4 新题
LeetCode810. 黑板异或游戏/455. 分发饼干/剑指Offer 53 - I. 在排序数组中查找数字 I/53 - II. 0~n-1中缺失的数字/54. 二叉搜索树的第k大节点(代码片段
不甘心芯片制造工艺的失败,Intel也将学习台积电玩数字游戏