2020-11-24 20:48 /
        最近在洛谷上被题刷的时候发现各路大佬都在什么csdn上用博客(?)来记录各种大牛解题方法,于是突发奇想也想记录一下自己是如何被题目血虐并放弃的(bgm38)
         至于为什么会在bangumi上发而不是csdn呢?懒:)
         下面就要有请罪魁祸首上场了!https://www.luogu.com.cn/problem/P7094?contestId=37319  噔噔!就是这道诡异的数论题!
           下面稍微说一下我的思路。。。?通过一些机缘巧合,偶然发现可以把这个式子整理成一个以y为自变量的函数:x = acy/(dc-by),因为x一定是正数,所以可以设置一个循环,不断让y从1增长,直到dc-by<0的时候停止循环,每次循环中,如果acy%(dc-by) == 0,就让结果加一(从零开始),在循环结束的时候所得到的就是题目要求的结果?我用看起来是c++其实除了输入输出函数以外与c别无二致的c++语言写出来大概就是这样
#include<iostream>
using namespace std;
int main(void)
{
        int n,a,b,c,d,j,time = 0;
        cin >> n;
        for(int i = 0;i < n;i++)
        {
                cin >> a >> b >> c >> d;
                for(j = 1,time = 0;d*c-j*b >0 ;j++)
                        if((a*c*j)%(d*c-b*j) == 0)
                                ++time;
                cout << time << endl;               
        }
        return 0;
}

结果20个检查点只过了8个= =个人感觉会是int类型太小(但好像计算的时候大小不够会自动扩到longlong?),在计算的时候炸了,但一通乱改之后并无变化,最后还是选择就把最初的代码放上来得了= =
        这大概就是我心血来潮没事闲的写的第一个记录日志了。。。?希望能被大佬在海里捞上我这跟小细针(雾
#1 - 2020-11-24 23:29
但好像计算的时候大小不够会自动扩到longlong
并不会