Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 求数组的最小值 我正在做一个程序,它是在XY平面上有多少个n形多边形可以被一条与y轴平行的线相交的,我发现,我可以把多边形看成是x轴上的一条线,从x的最小值到x的最大值的限制。我这里的问题是,坐标可以达到10^5,我很难找到每个多边形x的最小值。我已经检查_Arrays_C_Loops_For Loop - Fatal编程技术网

Arrays 求数组的最小值 我正在做一个程序,它是在XY平面上有多少个n形多边形可以被一条与y轴平行的线相交的,我发现,我可以把多边形看成是x轴上的一条线,从x的最小值到x的最大值的限制。我这里的问题是,坐标可以达到10^5,我很难找到每个多边形x的最小值。我已经检查

Arrays 求数组的最小值 我正在做一个程序,它是在XY平面上有多少个n形多边形可以被一条与y轴平行的线相交的,我发现,我可以把多边形看成是x轴上的一条线,从x的最小值到x的最大值的限制。我这里的问题是,坐标可以达到10^5,我很难找到每个多边形x的最小值。我已经检查,arrays,c,loops,for-loop,Arrays,C,Loops,For Loop,求数组的最小值 我正在做一个程序,它是在XY平面上有多少个n形多边形可以被一条与y轴平行的线相交的,我发现,我可以把多边形看成是x轴上的一条线,从x的最小值到x的最大值的限制。我这里的问题是,坐标可以达到10^5,我很难找到每个多边形x的最小值。我已经检查过了,我认为它已经正确了,但是它总是打印出x的最小值是0 #include <stdio.h> #include <stdlib.h> int main() { long long bangun, sisi,

求数组的最小值

我正在做一个程序,它是在XY平面上有多少个n形多边形可以被一条与y轴平行的线相交的,我发现,我可以把多边形看成是x轴上的一条线,从x的最小值到x的最大值的限制。我这里的问题是,坐标可以达到10^5,我很难找到每个多边形x的最小值。我已经检查过了,我认为它已经正确了,但是它总是打印出x的最小值是0

#include <stdio.h>
#include <stdlib.h>

int main()
{
    long long bangun, sisi, i, j, k, l, count=0, c1=0, countmax=0, bs;
    long long max=0;
    double x;
    long long arrx[1009][1009]={0}, arrxmax[1000]={0}, arrxmin[1000]={10000000};
    scanf("%d", &bangun);
    for(i=0;i<bangun;i++){
        scanf("%d", &sisi);
        for(j=0;j<sisi;j++){
        scanf("%lld", &arrx[i][j]);
        scanf("%d", &bs);
        }
    }
    //give value to arrxmax[i] & arrxmin[i] for polygon i
    for(i=0;i<bangun;i++){
        for(j=0;j<sisi;j++){
            if(arrx[i][j] > arrxmax[i]){
                arrxmax[i] = arrx[i][j];
            }
            //this is the part to find the minimum value
            if(arrxmin[i] > arrx[i][j]){
                arrxmin[i] = arrx[i][j];
            }
        }
    }
    printf("%d\n", arrxmin[0]);
    //finding the largest x of all polygons
    for(i=0;i<bangun;i++){
        if(arrxmax[i]>max){
            max = arrxmax[i];
        }
    }
    for(x=0;x<=max;x+=0.3){
        count = 0;
        for(i=0;i<bangun;i++){
            if(x<arrxmax[i] && x>arrxmin[i]){
                count++;
                c1 = count;
            }
            if(c1>countmax){
                countmax = c1;
            }
        }
    }
    printf("%d", countmax);
    return 0;
}
#包括
#包括
int main()
{
long long bangun,sisi,i,j,k,l,count=0,c1=0,countmax=0,bs;
最大长=0;
双x;
long long arrx[1009][1009]={0},arrxmax[1000]={0},arrxmin[1000]={10000000};
scanf(“%d”和“bangun”);

对于(i=0;i)您用来测试这个的输入是什么?您希望从该输入中得到什么输出?您是否考虑过单步执行调试器以查看发生了什么?无论采用何种算法,您似乎使用了太多的堆栈空间(>8MB)。除非堆栈被显式配置为这样的大小,否则应恢复为动态内存分配,否则可能会出现内存损坏和crashes@RetiredNinja1 3 21500 23500 22500 3000,我预计是21500,因为它是最小的,但我得到的最小值是0。这里的0不是程序的输出,而是我要打印arr时的输出xmin[0]@SomeWittyUsername就目前而言,这是我所能做的,因为我在编程方面还不太成熟。我不想直言不讳,但这种方法是不可接受的。如果不解决我提到的问题,就没有必要修复算法