两函数的交点

问题 D: 函数 (function)

时间限制: 1 Sec  内存限制: 128 MB
提交 状态

题目描述

给定两个自变量是 x 因变量是 y 的函数,这两个函数有可能为二次函数、一次函数或常函数。

求两个函数图像交点个数。

输入

共两行,每行有三个整数,是给定的两个函数各项的系数。

输出

共一行,输出两个函数图像交点个数;若交点有无数个,输出 "W" 。

样例输入 Copy

【样例1】
0 0 0
0 0 -1
【样例2】
0 0 1
0 0 1
【样例3】
21 4 -1
5 1 1

样例输出 Copy

【样例1】
0
【样例2】
W
【样例3】
2

提示

保证两个函数中每项的系数的绝对值不超过100。
#include<bits/stdc++.h> 
using namespace std;
typedef long long ll;
inline int read()
{
    int x=0;char ch=getchar();
    while(ch<'0'||ch>'9')ch=getchar();
    while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}
    return x;
}
const int maxn=1e6+100;
const ll INF=1e13;
int main(){
    int a1,b1,c1;
    int a2,b2,c2;
    cin>>a1>>b1>>c1;
    cin>>a2>>b2>>c2;
    int a=a1-a2,b=b1-b2,c=c1-c2;
    if(a==0&&b==0){
        if(c==0){
            printf("W
");
        }
        else{
            printf("0
");
        }
    }
    else if(a==0){
        printf("1
"); 
    }
    else{
        if(b*b-4*a*c>0){
            printf("2
");
        }
        else if(b*b-4*a*c==0){
            printf("1
");
        }
        else{
            printf("0
");
        }
    }
    return 0;
}
原文地址:https://www.cnblogs.com/lipu123/p/13302174.html