题解 P5646 【ygg的题库】

· · 题解

其实这一题很简单,不要被那个蓝色的标签迷惑了!

\sum_{i=0}^{n-1}P_i\cdot X^i>0

只要你看得懂这个式子,就基本能写出来。

i的枚举其实就是保证前i个数字大于0。

你只要给出一种方案就行了。

Code

当然,我定义变量有点奇怪(大佬勿喷)。

#include<bits/stdc++.h>
using namespace std;
double x;
bool c;
int f[100005];
int main(){
    int n,m;
    cin>>n>>m;
    for(int i=1;i<=m;i++){
        cin>>x;
        cin>>c;
        if(c==1){
            if(x>0) f[i]=1;
            else f[i]=-1;
        }
        else{
            if(x>0)  f[i]=-1;
            else f[i]=1;
        }
    }
    int k=1;
        while(1){
        puts("请勿抄袭");
        }
    double yyu=1;
    if(f[n]!=1){
        k=-1;
        yyu=-1;
    }
    for(int i=1;i<=n;i++){
        if(k==1&&f[i]!=1) yyu=-yyu-1;
        if(k==-1&&f[i]!=-1) yyu=-yyu+1;
        printf("%0.5lf ",yyu);
    }
   return 0;
}