______________________1205_______________________能不用数组就不用数组吧...

同一题在是用数组和不使用数组的时候在是用数组的时候 数组开得太大导致内存太大,数组开得太小导致访问越界,所以精良不开数组.并且以后在写程序的时候养成用__int64的好习惯..........尽量少犯那些操蛋而又让人无能为力的错...下面附上正确代码

#include<stdio.h>
__int64 max(__int64 q,__int64 y);
int main()
{
    __int64 a,n,t;
    scanf("%I64d",&t);
    while(t--)
    {
        static __int64 x,s;
        x=s=0;
    //    printf("********%I64d****%I64d*******",x,s);
        scanf("%I64d",&n);
        while(n--)
        {
            scanf("%I64d",&a);
            s=s+a;
            x=max(x,a);
        }
        s=s-x;
        if((s+1)>=x)
            printf("Yes\n");
        else
            printf("No\n");
    }
    return 0;
}
__int64 max(__int64 q,__int64 y)
{
    if(q>y)
        return q;
    else
        return y;
}
时间: 2024-08-07 08:29:16

______________________1205_______________________能不用数组就不用数组吧...的相关文章

不用遍历 递归算法 求数组中数字的最大值

#include "stdio.h"int ax[] ={1000,5,6,8,9,800,5,200,3,6,5,8,9};int paixu (int n, int ret){    if (n==0) return ret>ax[0]?ret:ax[0];    int ret1= ret>ax[n]? ret:ax[n];    return paixu(n-1,ret1);}int main(int argc, char* argv[]){    int numb

php 算法之分割数组,不用array_chunk()

用php写算法分割数组,不用array_chunk();算法如下所示. <?php //$array 数组 //$size 每个数组的个数 //每个数组元素是否默认键值 function array_chunk_list($array, $size, $preserve_keys = false) { reset($array); $i = 0; foreach ($array as $key => $value) { // 是否存在这个值 if (! isset($newarray[$i])

二维数组,矩形数组 集合

二维数组,矩形数组 集合 二维数组,矩形数组集合 一.二维数组: 一维数组----豆角 二维数组----表格 1)定义: 一维数组: 数据类型[] 数组变量名 = new 数据类型[数组长度]; 数据类型[] 数组变量名 = new 数据类型[数组长度]{1,2,3....}; 2)二维数组: 数据类型[,] 数组变量名 = new 数据类型[行数,列数]; int[,] a = new int[3,4]; 赋值: a[行下标,列下标] = 值       下标都是从0开始的 取值: a[行下标

二维数组,锯齿数组和集合

一.二维数组 二维数组:一维数组----豆角二维数组----表格 定义:1.一维数组:数据类型[] 数组变量名 = new 数据类型[数组长度];数据类型[] 数组变量名 = new 数据类型[数组长度]{1,2,3....}; 2.二维数组:数据类型[,] 数组变量名 = new 数据类型[行数,列数];int[,] a = new int[3,4]; 赋值: a[行下标,列下标] = 值 下标都是从0开始的取值: a[行下标,列下标] 题目:一个班6个人,从键盘输入每个学号语文,数学,外语成

20160423 二维数组,锯齿数组和集合

2016-04-23  20:46:26 一.二维数组: 一维数组----豆角 二维数组----表格 1)定义: 一维数组: 数据类型[] 数组变量名 = new 数据类型[数组长度]; 数据类型[] 数组变量名 = new 数据类型[数组长度]{1,2,3....}; 2)二维数组: 数据类型[,] 数组变量名 = new 数据类型[行数,列数]; int[,] a = new int[3,4]; 赋值: a[行下标,列下标] = 值       下标都是从0开始的 取值: a[行下标,列下标

数组指针/指针数组的示例

这两个名字不同当然所代表的意思也就不同.我刚开始看到这就吓到了,主要是中文太博大精深了,整这样的简称太专业了,把人都绕晕了.从英文解释或中文全称看就比较容易理解. 指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针 数组指针:a pointer to an array,即指向数组的指针 还要注意的是他们用法的区别,下面举例说明. int* a[4]     指针数组 表示:数组a中的元素都为int型指针 元素表示:*a[i]   *(a[i])是一样的,因

0033数组结构之数组

数组中只能存放同一种类型的数据 数组定义:1.只设定长度 2.不设定长度,但是直接给数组赋值 int[] arr = new int[10]; int[] scores = new int[]{100,99,98}; 1.  定义数组类Array 2.  向数组中添加元素,最后位置添加和指定位置 添加.起始位置添加 3.  查询数组中的元素和修改元素 先重写toString()方法,main方法中测试该方法 4.  数组中的包含.搜索和删除指定索引.删除数组第一个元素.删除数组最后一个元素.删除

php多维数组化一维数组

一.使用foreach <?php function arr_foreach ($arr) { static $tmp=array(); if (!is_array ($arr)) { return false; } foreach ($arr as $val ) { if (is_array ($val)) { arr_foreach ($val); } else { $tmp[]=$val; } } return $tmp; } $a = array(1,2=>array(3,4=>

结对开发——返回整数数组最大子数组和2

返回整数数组最大子数组和2 为了实现“敏捷开发”的目的,老师让我们采取“迭代”的方法进行项目的开发,这不,对于周一的求最大子数组和又有了新的要求,如下: 1.延续上次的要求,这里不再赘余… 2.如果数组A[0]……A[j-1]首尾相连,允许A[i-1],……A[n-1],A[0]……A[j-1]之和最大: 3.同时返回最大子数组的位置: 4.要求程序必须能处理1000 个元素,且每个元素是int32 类型的. 一.实验设计思路 首先实现的是数组首尾相连,先存入数组,再将原数组反向存储形成环形数组