1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol AI分析

解题思路

题目要求构造一个长度至少为 222 的数组 aaa,满足:

  1. 数组中的每个元素都只能是 111 或合数
  2. 数组元素之和为 nnn
  3. 在所有满足条件的方案中,数组长度最短

显然,我们要做的是:尽量用更少的数凑出 nnn。

P4792.第1题-构造合法和数组

    1000ms Tried: 27 Accepted: 9 Difficulty: 3 所属公司 : 蚂蚁
    算法与标签>构造

题目内容

给定一个正整数 nnn。请你找到一个长度至少为 222 的数组 aaa,使得数组 aaa 中仅包含 111 和合数(可以只包含 111,可以只包含合数,也可以同时有合数和 111),且 aaa 中所有元素的和为 nnn。如果有多个满足条件的 aaa,请输出长度最短的。如果有多个长度最短的 aaa,你可以输出任意一个。注意,自测运行功能可能因此返回错误结果,请自行检查答案正确性。

【名词解释】 合数:大于 111 的正整数,且有除 111 和自身外的正因子。

输入描述

每个测试文件均包含多组测试数据。第一行输入一个整数 T (1≤T≤103)T\ (1 \le T \le 10^3)T (1≤T≤103) 代表数据组数,每组测试数据描述如下:

输入一行一个正整数 n (2≤n≤1018)n\ (2 \le n \le 10^{18})n (2≤n≤1018)。

输出描述

对于每组测试数据,先输出一行一个正整数 kkk,表示 aaa 的长度。在第二行输出 kkk 个整数,表示 aaa 中的元素。如果存在多个解决方案,您可以输出任意一个,系统会自动判定是否正确。注意,自测运行功能可能因此返回错误结果,请自行检查答案正确性。

样例1

输入

3
8
10
2

输出

2
4 4
2
1 9
2
1 1

说明

  • 当 n=8n=8n=8 时: 需要构造长度至少为 222、仅含 111 和合数、和为 888 的最短数组。 取两个合数 4+4=84+4=84+4=8,长度为 222,是最短合法数组。

  • 当 n=10n=10n=10 时: 构造 1+9=101+9=101+9=10,其中 111 和 999(合数)均符合要求,数组长度为 222。

  • 当 n=2n=2n=2 时: 只能拆分为 1+1=21+1=21+1=2,数组长度为 222,满足条件。

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 1, 56ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?