1. #include<iostream>
  2. #include<cstdio>
  3. #include<cstring>
  4. using namespace std;
  5. int T,x,y,ans,g,l1,r1,l2,r2;
  6. int init()
  7. {
  8. int x=;char s=getchar();bool f=;
  9. while(s<''||s>''){if(s=='-')f=;s=getchar();}
  10. while(s>=''&&s<=''){x=x*+s-'';s=getchar();}
  11. if(f)return -x;return x;
  12. }
  13. void E_gcd(int a,int b)
  14. {
  15. if(b==)
  16. {
  17. x=;y=;g=a;
  18. }
  19. else
  20. {
  21. E_gcd(b,a%b);
  22. int tmp=x;
  23. x=y;
  24. y=tmp-a/b*y;
  25. }
  26. }
  27. int main()
  28. {
  29. int a,b,c,i,j;
  30. T=init();
  31. while(T--)
  32. {
  33. ans=;
  34. a=init();b=init();c=init();
  35. c=-c;
  36. l1=init();r1=init();l2=init();r2=init();
  37. if(a==&&b==)
  38. {
  39. if(c!=||l1>r1||l2>r1)
  40. {
  41. printf("0\n");
  42. continue;
  43. }
  44. long long an,li,ri;
  45. li=r1-l1+;ri=r2-l2+;
  46. an=li*ri;
  47. cout<<an<<endl;
  48. continue;
  49. }
  50. if(a==)
  51. {
  52. y=c/b;
  53. if(y<l2||y>r2||c%b!=)
  54. printf("0\n");
  55. else
  56. printf("1\n");
  57. continue;
  58. }
  59. if(b==)
  60. {
  61. x=c/a;
  62. if(x<l1||x>r1||c%a!=)
  63. printf("0\n");
  64. else
  65. printf("1\n");
  66. continue;
  67. }
  68. E_gcd(a,b);
  69. if(c%g!=)
  70. {
  71. printf("0\n");
  72. continue;
  73. }
  74. int s=c/g;
  75. x*=s;y*=s;
  76. int ai=a/g;
  77. int bi=b/g;
  78. if(x<l1)
  79. {
  80. while(x<l1)
  81. {
  82. x+=bi;y-=ai;
  83. }
  84. for(i=x;i<=r1;i+=bi,y-=ai)
  85. if(y>=l2&&y<=r2)
  86. ans++;
  87. }
  88. else if(x>r1)
  89. {
  90. while(x>r1)
  91. {
  92. x-=bi;y+=ai;
  93. }
  94. for(i=x;i>=l1;i-=bi,y+=ai)
  95. if(y>=l2&&y<=r2)
  96. ans++;
  97. }
  98. else
  99. {
  100. int yi=y;
  101. for(i=x;i<=r1;i+=bi,yi-=ai)
  102. if(yi>=l2&&yi<=r2)
  103. ans++;
  104. yi=y+ai;
  105. for(i=x-bi;i>=l1;i-=bi,yi+=ai)
  106. if(yi>=l2&&yi<=r2)
  107. ans++;
  108. }
  109. printf("%d\n",ans);
  110. }
  111. return ;
  112. }

codevs 1213 解的个数(我去年打了个表 - -)的更多相关文章

  1. 扩展gcd codevs 1213 解的个数

    codevs 1213 解的个数  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题目描述 Description 已知整数x,y满足如下面的条件: ax+by ...

  2. codevs 1213 解的个数

    1213 解的个数 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold       题目描述 Description 已知整数x,y满足如下面的条件: ax+by+c = ...

  3. Codevs 1213 解的个数(exgcd)

    1213 解的个数 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 已知整数x,y满足如下面的条件: ax+by+c=0 p< ...

  4. 解的个数(codevs 1213)

    题目描述 Description 已知整数x,y满足如下面的条件: ax+by+c = 0 p<=x<=q r<=y<=s 求满足这些条件的x,y的个数. 输入描述 Input ...

  5. n元线性方程非负整数解的个数问题

    设方程x1+x2+x3+...+xn = m(m是常数) 这个方程的非负整数解的个数有(m+n-1)!/((n-1)!m!),也就是C(n+m-1,m). 具体解释就是m个1和n-1个0做重集的全排列 ...

  6. codevs1213 解的个数

    题目描述 Description 已知整数x,y满足如下面的条件: ax+by+c = 0 p<=x<=q r<=y<=s 求满足这些条件的x,y的个数. 输入描述 Input ...

  7. P1098 方程解的个数

    题目描述 给出一个正整数N,请你求出x+y+z=N这个方程的正整数解的组数(1<=x<=y<=z<1000).其中,1<=x<=y<=z<=N . 输入 ...

  8. PE文件格式详解,第三讲,可选头文件格式,以及节表

    PE文件格式详解,第三讲,可选头文件格式,以及节表 作者:IBinary出处:http://www.cnblogs.com/iBinary/版权所有,欢迎保留原文链接进行转载:) 一丶可选头结构以及作 ...

  9. HDU1573 线性同余方程(解的个数)

    X问题 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...

随机推荐

  1. 如何在Android Studio中使用Gradle发布项目至Jcenter仓库

    简述 目前非常流行将开源库上传至Jcenter仓库中,使用起来非常方便且易于维护,特别是在Android Studio环境中,只需几步配置就可以轻松实现上传和发布. Library的转换和引用 博主的 ...

  2. php实现base64编码

    工作需要,想弄一个加密的串,就想仿照base64的编码方式,写一个加密的方法,所以就有了下面这个用php实现的base64的代码 <?php /** * Base64 编码/解码 * @auth ...

  3. ios 排序汇总

    ios 排序汇总  IOS几种简单有效的数组排序方法 //第一种,利用数组的sortedArrayUsingComparator调用 NSComparator ,obj1和obj2指的数组中的对象 N ...

  4. Ruby自学笔记(一)— 基本概况

    之前一直想要多看看RESTful Service相关的东西,找到一本相关的书,但是里面的代码都是用Ruby写的,虽然知道编程语言都是类似的,但是看到一些陌生的语法,还是有些摸不着头脑,所以最近终于下定 ...

  5. BZOJ 1057 棋盘制作

    Description 国际象棋是世界上最古老的博弈游戏之一,和中国的围棋.象棋以及日本的将棋同享盛名.据说国际象棋起源于易经的思想,棋盘是一个8*8大小的黑白相间的方阵,对应八八六十四卦,黑白对应阴 ...

  6. MATLAB中多行注释的三种方法

    MATLAB中多行注释的三种方法 A. %{ 若干语句 %} B. 多行注释: 选中要注释的若干语句, 编辑器菜单Text->Comment, 或者快捷键Ctrl+R 取消注释: 选中要取消注释 ...

  7. Spring MVC控制器用@ResponseBody声明返回json数据报406的问题

    本打算今天早点下班,结果下午测试调试程序发现一个问题纠结到晚上才解决,现在写一篇博客来总结下. 是这样的,本人在Spring mvc控制层用到了@ResponseBody标注,以便返回的数据为json ...

  8. DB2中时间格式化

    values to_char(current timestamp - 7 hours,'hh24')||'点' values varchar(hour(current time + 5 hour))| ...

  9. c# 集合ArrayList;特殊集合Stack、Queue

    一)  ArrayList 1.foreach遍历数组中各个元素,执行内部语句 2.  3. 4.  myarry.Clear();//将集合清空 bool b = myarry.Contains(3 ...

  10. Vi的几种退出方式

    1.q 退出 2.w 保存,继续操作 3.wq 保存退出 4.q! 不保存,放弃修改 5.x 同wq相似,但又有区别 wq   强制性写入文件并退出.即使文件没有被修改也强制写入,并更新文件的修改时间 ...