Utawarerumono

描述

题目描述:

算术是为数不多的会让久远感到棘手的事情。通常她会找哈克帮忙,但是哈克已经被她派去买东西了。于是她向你寻求帮助。

给出一个关于变量x,y的不定方程ax+by=cax+by=c,显然这个方程可能有多个整数解。久远想知道如果有解,使得p2​∗x^2+p1​∗x+q2​∗y^2+q1​∗y最小的一组整数解是什么。为了方便,你只需要输出p2​∗x^2+p1​∗x+q2​∗y^2+q1​∗y的最小值。

输入:

第一行三个空格隔开的整数a,b,c(0≤a,b,c≤105)。

第二行两个空格隔开的整数p1​,p2​(1≤p1​,p2​≤105)。

第三行两个空格隔开的整数q1​,q2​(1≤q1​,q2​≤105)。

输出:

如果方程无整数解,输出``Kuon’’。

如果有整数解,输出p2​∗x^2+p1​∗x+q2​∗y^2+q1​∗y的最小值。

样例输入
  1. 2 2 1
    1 1
    1 1
样例输出
  1. Kuon
    由于一次项的影响较小,只考虑二次项p2*x^2+q1*y^2=p2*((c-by)/a)^2+q2*y^2,存在一个O(a)的|y|的取值满足c-by是一个a的倍数,
    此时|
    (c-by)/a|是O(c+b)的,这样就得到了一组不超过10^18的解,且答案不会更大。
    后发现多项式的值在X的绝对值增加的时候,只有在x<0的时候才会变小,当x<(-p1)/2p2的值仍然会增大,
    所以可以暴力枚举xy的值(1e5就可以过了)。
  1. #include <cstdio>
  2. #include <cstring>
  3. #include <cmath>
  4. #include<algorithm>
  5. #include<iostream>
  6. using namespace std;
  7. typedef long long ll;
  8. ll p2,p1,q2,q1;
  9. ll a, b, c, d, x, y;
  10. ll ans=1e18;
  11. ll Exgcd(ll a, ll b)
  12. {
  13. if(b==){ x=, y=;return a;}
  14. ll r = Exgcd(b, a%b);
  15. ll tp=x;
  16. x = y;
  17. y = tp-a/b*y;
  18. return r;
  19. }
  20. int main()
  21. {
  22. cin>>a>>b>>c>>p1>>p2>>q1>>q2;
  23. d = Exgcd(a, b);
  24. if(a==&&b==&&c==) printf("0\n");
  25. if(((a==)&&(b==)&&c) || c%d!= )
  26. printf("Kuon\n");
  27. else if(a&&b==){
  28. if(c%a!=){
  29. printf("Kuon\n");
  30. }else{
  31. ll ta=c/a;
  32. ll ee=p2*ta*ta+p1*ta;
  33. cout<<ee<<endl;
  34. }
  35. }
  36. else if(a==&&b)
  37. {
  38. if(c%b!=)
  39. printf("Kuon\n");
  40. else{
  41. ll tc=c/b;
  42. ll eee=q2*tc*tc+q1*tc;
  43. cout<<eee<<endl;
  44. }
  45. }
  46. else{
  47. for(int i=-;i<=;i++){
  48. if((c-a*i)%b==){
  49. ll iy=(c-a*i)/b;
  50. ll ac=p2*i*i+p1*i+q2*iy*iy+q1*iy;
  51. ans=min(ans,ac);
  52. }
  53. }
  54. cout<<ans<<endl;
  55. }
  56. return ;
  57. }

2018 Wannafly summer camp Day2--Utawarerumono的更多相关文章

  1. 2018 Wannafly summer camp Day8--连通块计数

    连通块计数 描述 题目描述: 小 A 有一棵长的很奇怪的树,他由 n 条链和 1 个点作为根构成,第 i条链有 ai​ 个点,每一条链的一端都与根结点相连. 现在小 A 想知道,这棵长得奇怪的树有多少 ...

  2. 2018 Wannafly summer camp Day2--New Game!

    New Game! 描述 题目描述: Eagle Jump公司正在开发一款新的游戏.泷本一二三作为其员工,获得了提前试玩的机会.现在她正在试图通过一个迷宫. 这个迷宫有一些特点.为了方便描述,我们对这 ...

  3. 2018 Wannafly summer camp Day8--区间权值

    区间权值 小Bo有\(n\)个正整数\(a_1\)--\(a_n\),以及一个权值序列\(w_1\)--\(w_n\),现在她定义\(f(l,r)=(\sum_{i=l}^r a_i^2) *w_{r ...

  4. 2018 Wannafly summer camp Day3--Shopping

    Shopping 描述 题目描述: 你要买n件物品,其中有一些是凳子. 商场正在举行促销活动,如果购物车中有至少一个凳子,那么你可以半价购买这个购物车中最贵的一个物品. 你有m辆购物车,请最小化你的花 ...

  5. 2018 Wannafly summer camp Day3--Travel

    Travel 描述 题目描述: 魔方国有n座城市,编号为1~n.城市之间通过n-1条无向道路连接,形成一个树形结构. 澜澜打算在魔方国进行mm次旅游,每次游览至少一座城市.为了方便,每次旅游游览的城市 ...

  6. 2018 Wannafly summer camp Day3--Knight

    Knight 题目描述: 有一张无限大的棋盘,你要将马从\((0,0)\)移到\((n,m)\). 每一步中,如果马在\((x,y)(x,y)\),你可以将它移动到 \((x+1,y+2)(x+1,y ...

  7. 牛客网补题 New Game!(原Wannafly summer camp day2原题)

    思路:这个题在秦皇岛的时候好像没有写出来,反正我是没有写出来,题解是听懂了:把直线和圆都看做一个结点,圆和直线用点到直线的距离与半径差求出来,圆和圆之间用点和点之间的距离和半径差表示,最后最短路跑一遍 ...

  8. 2019 wannafly winter camp

    2019 wannafly winter camp Name Rank Solved A B C D E F G H I J K day1 9 5/11 O O O O O day2 5 3/11 O ...

  9. 2019 wannafly winter camp day 3

    2019 wannafly winter camp day 3 J 操作S等价于将S串取反,然后依次遍历取反后的串,每次加入新字符a,当前的串是T,那么这次操作之后的串就是TaT.这是第一次转化. 涉 ...

随机推荐

  1. C#学习笔记7

    1.重写GetHashCode方法注意点: (1)重写GetHashCode方法,也应重写Equals方法,否者编译器会警告. (2)相等的对象必须有相等的散列码(若a.Equals(b),则a.Ge ...

  2. js系列之js简介

    该系列教程都来源于:廖雪峰老师的博客 JavaScript是世界上最流行的脚本语言,因为你在电脑.手机.平板上浏览的所有的网页,以及无数基于HTML5的手机App,交互逻辑都是由JavaScript驱 ...

  3. node.js-cancelled because Node.js is unresponsive

    今天初学node.js,但是在使用vs code 进行启动调试的时候出现了一个问题 这个报错,一开始我并不知道是什么意思.(而截至我写这个笔记我也还没了解清楚) 大概翻译出来的意思是说 “node.j ...

  4. Ubuntu真机安装

    Ubuntu真机安装 1.Ubuntu安装: (1)启动盘制作: a.下载启动盘制作工具Universal USB Installe,下载地址: b.下载Ubuntu系统镜像,到本地磁盘,官方下载地址 ...

  5. .NET开源工作流RoadFlow-表单设计-组织机构选择

    组织机构选择即在表单中添加组织机构选择框. 选择范围: 1.发起者部门:只能在发起者同一个部门中选择. 2.处理者部门:只能在当前处理者同一个部门中选择. 3.自定义:自己指定一个选择范围. 选择类型 ...

  6. 《ArcGIS Runtime SDK for Android开发笔记》——离在线一体化技术:概述

    1.前言 数据生产和数据展示是常见的两大专业级移动GIS应用场景,这里我们针对数据生产环节的ArcGIS的离在线一体化技术给大家做一个基本的介绍和梳理. 使用ArcGIS离在线一体化技术首先需要以下基 ...

  7. Windows资源管理器对物理内存的描述

    对每个进程的虚拟/物理内存使用描述: 1.硬错误/秒:在最后一分钟内每秒出现的平均硬页错误数 2.提交(KB):操作系统为内存保留的虚拟内存量,任务管理器中显示为:提交大小 3.工作集(KB):进程当 ...

  8. C# 中关于radiobutton控件的使用

    在一个Form窗口中定义了3个radiobutton,radioButton1.radioButton2和radioButton3,以及button1和button2(这里可以是其他控件) 为了实现单 ...

  9. LESS初体验

    将一个变量赋值给另一个变量,用引号:@white: 'color-white';,使用另一个变量,需要双@@符号:p {color: @@white;}. 而以这样进行变量的赋值:@white: @c ...

  10. February 28 2017 Week 9 Tuesday

    Time you enjoy wasting, was not wasted. 你乐于挥霍的时间,都不能算作是浪费. A few days ago, I learned a sentence from ...