P2026 求一次函数解析式

题目背景

做数学寒假作业的怨念……

题目描述

给定两个整点的坐标,求它们所在直线的函数解析式(一次函数)。

输入输出格式

输入格式:

输入共两行。

第一行有两个整数x1,y1。表示第一个整点的坐标为(x1,y1)

第二行有两个整数x2,y2。表示第二个整点的坐标为(x2,y2)

输出格式:

输出共一行,即这个函数解析式。

输入输出样例

输入样例#1: 复制

【一】
3 6
2 4
【二】
3 5
2 7
【三】
3 -1
5 -2
输出样例#1: 复制

【一】
y=2x
【二】
y=-2x+11
【三】
y=-1/2*x+1/2

说明

二乘X表示为2x

二分之一乘X表示为1/2*x

数学+模拟

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
char kc,bc;
int n,x1,x2,y1,y2,kx,ky,bx,by,gcd;
int read()
{
    ,f=; char ch=getchar();
    ;ch=getchar();}
    +ch-',ch=getchar();
    return x*f;
}
int GCD(int a,int b)
{
    ) return a;
    return GCD(b,a%b);
}
int main()
{
    x1=read(),y1=read();
    x2=read(),y2=read();
    gcd=GCD(y2-y1,x2-x1);
    kx=(y2-y1)/gcd,ky=(x2-x1)/gcd;
    &&ky>||kx<&&ky<) kc='+';
    else kc='-';
    gcd=GCD(ky*y1-kx*x1,ky);
    bx=(ky*y1-kx*x1)/gcd,by=ky/gcd;
    &&by>||bx<&&by<) bc='+';
    else bc='-';
    kx=abs(kx),ky=abs(ky),bx=abs(bx),by=abs(by);
    )
    {
        if(kc=='+')
        {
            ) printf("y=%dx",kx);
            else
             ) printf("y=%dx%c%d",kx,bc,bx);
             else printf("y=%dx%c%d/%d",kx,bc,bx,by);
        }
        else
        {
            ) printf("y=%c%dx",kc,kx);
            else
             ) printf("y=%c%dx%c%d",kc,kx,bc,bx);
             else printf("y=%c%dx%c%d/%d",kc,kx,bc,bx,by);
        }
    }
    else
    {
        if(kc=='+')
        {
            ) printf("y=%d/%dx",kx,ky);
            else
             ) printf("y=%d/%dx%c%d",kx,ky,bc,bx);
             else printf("y=%d/%dx%c%d/%d",kx,ky,bc,bx,by);
        }
        else
        {
            ) printf("y=%c%d/%dx",kc,kx,ky);
            else
             ) printf("y=%c%d/%d*x%c%d",kc,kx,ky,bc,bx);
             else printf("y=%c%d/%d*x%c%d/%d",kc,kx,ky,bc,bx,by);
        }
    }
    ;
}

最新文章

  1. VB.NET中图像处理的一些技巧以及其和C#图像处理的差距。
  2. 杭电--1102--Constructing Roads--并查集
  3. 【转】Key/Value之王Memcached初探:一、掀起Memcached的盖头来
  4. Windows下Memcached在.Net程序中的实际运用(从Memcached客户端Enyim的库的编译到实际项目运用)
  5. JS判断终端(Android IOS)
  6. jquery $ dollar符号用法总结
  7. Exception in thread "main" org.hibernate.MappingException: You may only specify a cache for root
  8. CodeForces628-B.New Skateboard
  9. mongodb副本集实现
  10. silverlight用Encoding.UTF8读取shape文件的中文属性值 出现乱码
  11. 2018软工实践作业八之UML设计
  12. 获取Tomcat更详细的日志
  13. llvm Array Bounds Check Elimination
  14. vue教程1-02 data里面存储数据
  15. jsp链接orcl
  16. mysql慢查询日志功能的使用
  17. 使用Nginx过滤网络爬虫
  18. IOS 程序员开发最常用宏定义
  19. Codeforces 913C - Party Lemonade
  20. Java多线程(一)初步了解

热门文章

  1. cloud-init简介及组件说明
  2. codebolocks 中文使用手册1.1
  3. Set(), Get() 真正的目的
  4. php 根据文件内容来判断文件类型
  5. webpack 基础
  6. CSS3的笔记总结
  7. js 图片自动循环切换setInterval();
  8. Nagios 监控系统架设全攻略
  9. hdu 1551 Cable master (二分法)
  10. Solidity陷阱:以太坊的随机数生成