zoukankan      html  css  js  c++  java
  • SPOJ

    题意 :给你n个数,问你是否存在一个多项式(最多三次方)满足f(i)= xi。

    思路:讲一个神奇的思路:

    x- (x - 1)3 = 3x2 - 3x + 1

    x2 - (x - 1)2 = 2x + 1

    x - (x - 1) = 1

    1 - 1 = 0

    看了上面这么多,其实已经可以发现一件事情了:如果相邻常数减一次那么就是0;相邻一次式减一次降为常数,减两次为0;相邻二次式减一次降为一次式,减两次降为常数,减三次....

    由此我们可以知道,如果存在一个多项式(最多三次方)满足f(i)= xi,那么我相邻的数相减4次必为0,如果不满足,那肯定不是同个式子里的

    代码:

    #include<cstdio>
    #include<set>
    #include<vector>
    #include<cmath>
    #include<queue>
    #include<cstring>
    #include<algorithm>
    typedef long long ll;
    using namespace std;
    const int maxn = 500 + 5;
    const double INF = 0x3f3f3f3f;
    const ll MOD = 1000000007;
    ll num[maxn];
    
    int main(){
        int T;
        scanf("%d", &T);
        while(T--){
            ll n;
            scanf("%lld", &n);
            for(int i = 1; i <= n; i++)
                scanf("%lld", &num[i]);
            for(int i = 1; i <= 4; i++){
                for(int j = n ;j > i; j--)
                    num[j] = num[j] - num[j - 1];
            }
            bool flag = true;
            for(int i = 5; i <= n; i++){
                if(num[i]){
                    flag = false;
                    break;
                }
            }
            if(flag) printf("YES
    ");
            else printf("NO
    ");
        }
        return 0;
    }
    /*
    Input:
    3
    1 3
    5 0 1 2 3 4
    5 0 1 2 4 5
    
    Output:
    YES
    YES
    NO
    */
  • 相关阅读:
    神州数码RIP协议认证
    神州数码RIP路由协议
    神州数码路由器静态路由配置
    神州数码广域网链路封装
    神州数码路由器以太网端口单臂路由
    神州数码路由器的基本管理方式
    路由器DHCP服务及DHCP中继
    CHAP认证(双向)
    PAP认证(单向、双向)
    基于链路的OSPFMD5口令认证
  • 原文地址:https://www.cnblogs.com/KirinSB/p/9595556.html
Copyright © 2011-2022 走看看