2017.10.6 QBXT 模拟赛

幸存生龙活虎公式:X^amodb=c.给出a,b,c,求出全体知足条件的X。输入包含多组数据,每组数据四个正整数1=a,b,c=10^7。每组数据输出若干行,每后生可畏行代表了满足方程的一个X的解,解的依次遵照从小到大出口,最终输出二个空行。未有解输出“NoSolution!”c#区的原帖:在么?mathe在么?

描述:解一元三遍方程ax2+bx+c=0的解。
输入:输入八个实数a,b,c的值,且a不等于0。
输出:输出多个根X1和X2,用空格隔断,具体魄式为:X1 X2之中山高校的根先输出,即X1>=X2。结果保留两位小数。数据保险一定有实根。
样例输入:1 5 -2
样例输出:0.37 -5.37
考点:一元叁回方程的解法
代码:

 比方:bbbabcbaabcba 大家以第4个c为基本,开采回文半径是3,大于3一定不是回文串。当回文串长度为偶数的时候,大家需求特殊管理一下。 

#include <stdio.h>
#include <math.h>
int main()
{
        float a,b,c,x1,x2,d;
        scanf("%f %f %f",&a,&b,&c);
        if(a!=0)
        {
                d=sqrt(b*b-4*a*c);
                x1=(-b+d)/(2*a);
                x2=(-b-d)/(2*a);
                if(x1<x2) printf("%0.2f %0.2f\n",x2,x1); //大的在前面
                else
                        printf("%0.2f %0.2f\n",x1,x2);
        }
        return 0;
}

 

T2

T3

美高梅4858官方网站,  前三分一的数额足以用中华夏族民共和国剩余定理

View Code

#include <algorithm>
#include <cctype>
#include <cstdio>
#define N 1005000
int n, cnt1, cnt2, sum;
struct node
{
    int num, pos;
    bool operator < (node a)const
    {
        if (num != a.num) return num < a.num;
        else return pos < a.pos;
    }
}a[N];
int main(int argc, char *argv[])
{
    freopen("sort.in", "r", stdin); freopen("sort.out", "w", stdout);
    scanf("%d", &n);
    for (int i = 1; i <= n; ++i) scanf("%d", &a[i].num), a[i].pos=i;
    std :: sort(a + 1, a + n + 1);
    for (int i = 1; i <= n; ++i)
    {
        if (a[i].pos > i) cnt1++;
        if (a[i].pos < i) cnt2++;
    }
    if (cnt1 == 1 || cnt2 == 1 || (!cnt2 && !cnt1)) puts("YES");
    else puts("NO");
    return 0;
    fclose(stdin); fclose(stdout);
}

  每一回拍卖完回文串,大家要把他的hash值记录下来。

难点链接

美高梅在线登录网址,  能够窥见回文串是足以二分的

美高梅在线登录网址 1美高梅在线登录网址 2

T1

www.4688.com,   X%a1=b1

    同余方程组