首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
单组_spj判断数组之和
[编程题]单组_spj判断数组之和
热度指数:9526
时间限制:C/C++ 3秒,其他语言6秒
空间限制:C/C++ 256M,其他语言512M
算法知识视频讲解
给定两个整数
和
,请你构造一个长度为
的正整数数组,使得其元素之和为
。
保证有
。
输入描述:
第一行有两个整数
和
。
输出描述:
输出
个正整数,它们的和需要为
。
示例1
输入
3 6
输出
1 2 3
马上挑战
算法知识视频讲解
提交运行
算法知识视频讲解
添加笔记
求解答(0)
邀请回答
收藏(63)
分享
提交结果有问题?
2个回答
54篇题解
添加回答
0
C
love萦萦
此题难度不算大,但是需要逻辑能力,需要知道如何分配数据。
#include
<stdio.h>
void
num
(
int
n
,
long
long
m
)
{
long
long
a
[n];
//定义一个数组,用来储存元素
for
(
int
i=
0
;i<n;i++)
//首先初始化元素,方便后续操作
{
a
[i]=
1
;
}
long
long
s=m-n;
//这里举个例子,前面的元素已经初始化了,比如n=5,m=10,a[5]={1,1,1,1,1},全部加起来后和10还相差5,所以这里将他们的差存储为s
for
(
int
i=
0
;i<n&&s>
0
;i++)
//接上面,a[5]={1,1,1,1,1},所以将剩余的值加到第一个数,a[5]={6,1,1,1,1},此时s=0,跳出循环,每个元素相加刚好为10
{
long
long
add=s;
a
[i]+=add;
s-=add;
}
for
(
int
i=
0
;i<n;i++)
//循环输出每个元素
{
printf
(
"
%lld
"
,
a
[i]);
}
printf
(
"
\n
"
);
}
int
main
() {
int
n;
long
long
m;
scanf
(
"
%d%lld
"
,&n,&m);
num
(n,m);
return
0
;
}
发表于 2025-02-25 20:58:14
回复(0)
1
C
海纳百川有容乃大
/*我认为这个题目主要是两个任务,1,创建一个大小为a的数组,2,数组里面填入大小和为b的数据,这个数据是随机的应该由随机数来给定,并且由裕度来决定随机数的范围,创建a大小的数组,在C语言中不能将变量当做数组大小,所以应该用向堆申请空间的形式创建*/
#include
<stdio.h>
#include
<stdlib.h>
#include
<time.h>
#define
SIZENAM
10
//裕度
int
main
() {
int
a
,
b
;
int
sum
;
srand
((
unsigned
int
)
time
(
NULL
));
int
randint
=
rand
()%
SIZENAM
;
scanf
(
"
%d
%d
"
, &
a
, &
b
);
int
*
array
= (
int
*)
malloc
(
a
*
sizeof
(
int
));
if
(
array
==
NULL
)
{
printf
(
"err malloc"
);
}
while
(
1
)
{
sum
=
0
;
for
(
int
i
=
0
;
i
<
a
;
i
++)
{
array
[
i
] =
rand
()%
SIZENAM
;
sum
+=
array
[
i
];
}
if
(
sum
==
b
)
{
break
;
}
}
for
(
int
i
=
0
;
i
<
a
;
i
++)
{
printf
(
"
%d
"
,
array
[
i
]);
}
free
(
array
);
array
=
NULL
;
return
0
;
}
发表于 2024-08-23 10:01:16
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
难度:
2条回答
63收藏
1098浏览
热门推荐
相关试题
3.下列关于表中西部省市区2006...
资料分析
言语理解与表达
资料分析
评论
(1)
4.该校1997年男女教师的比例为...
资料分析
言语理解与表达
资料分析
评论
(1)
计算机在工作过程中,若突然停电,(...
计算机常识
普及
C++
Pascal
选择题
评论
(1)
来自
NOIP2008初赛普及组
Mysql中表student_in...
数据库
SQL
评论
(1)
SQL中,下列涉及空值的操作不正确...
SQL
评论
(0)
单组_spj判断数组之和
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题
3 6
1 2 3