zoukankan      html  css  js  c++  java
  • 数字游戏【后缀积问题,一个数学分析问题】

    此题着重考虑每加上一个数会对,前面得-+0产生什么样的影响。分析可知插入0为特殊点。然后就可以通过代码实现。

    1 1 0 1 3 41 -1等模拟运行下就能法现其规律。


    )V(YEBD2J[]QY)%6JFB30L8


      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 }
    追求吾之所爱
  • 相关阅读:
    Java提倡的命名习惯
    菜鸟涂鸦作品展_No.24
    Java异常处理学习笔记
    菜鸟涂鸦作品展_No.21
    菜鸟涂鸦作品展_No.20
    菜鸟涂鸦作品展_No.23
    对我影响最大的老师
    自我介绍0.0
    xml的标记、元素和属性
    C#(.net)中的DllImport
  • 原文地址:https://www.cnblogs.com/rstz/p/14391069.html
Copyright © 2011-2022 走看看