{"problem":{"name":"「INOH」Round 1 - 意外","description":{"content":"通信中的意外是不可避免的。 A 程序从交互程序获得一个长度为 $10^2$ 的数组，其元素值域为 $ \\lbrack 0, 998244353 ) $，A 程序对其进行编码，即 `Encode` 操作，生成一个长度任意，元素值域为 $\\lbrack 0, 998244353 )$ 的数组，然后将其返回给交互程序。 交互程序会对编码生成的数组进行如下操作： - 对于每一个元素，有 $50\\%$","description_type":"Markdown"},"platform":"Luogu","limit":{"time_limit":5000,"memory_limit":2048},"difficulty":{"LuoguStyle":"P6"},"is_remote":true,"is_sync":true,"sync_url":null,"sign":"LGP9165"},"statements":[{"statement_type":"Markdown","content":"通信中的意外是不可避免的。\n\nA 程序从交互程序获得一个长度为 $10^2$ 的数组，其元素值域为 $ \\lbrack 0, 998244353 ) $，A 程序对其进行编码，即 `Encode` 操作，生成一个长度任意，元素值域为 $\\lbrack 0, 998244353 )$ 的数组，然后将其返回给交互程序。\n\n交互程序会对编码生成的数组进行如下操作：\n\n- 对于每一个元素，有 $50\\%$ 概率，将其赋成在 $ \\lbrack 0, 998244353 ) $ 内的一个随机的数，有 $50\\%$ 概率不变。\n\n之后 B 程序会从交互程序获得操作后的数组，B 程序需要对其进行解码，即 `Decode` 操作，根据数组信息还原出最初 A 程序从交互程序获得的数组。\n\n### 实现细节\n\n由于无法实现通信，本题以交互的形式运行。\n\n你不需要，也不应该实现主函数，你只需要实现下面两个函数\n\n1. `vector <int> Encode ( vector <int> vec );`\n- 该函数传入一个长度为 $10^2$ 的 `vector`，返回一个任意长度的 `vector`。\n2. `vector <int> Decode ( vector <int> vec );`\n- 该函数传入一个任意长度的 `vector`，返回一个长度为 $10^2$ 的 `vector`。\n\n**交互库会调用 `Encode` 不超过 $3 \\times 10^4$ 次，调用 `Decode` 不超过 $1 \\times 10^4$ 次。**  \n\n**下发的交互库**的实现是固定的测试数据组数，随机一个数组，并立即对其 `Encode` 和 `Decode`，即仅用于简单检验程序。  \n\n使用时，你可以**直接将实现好的 `Encode` 和 `Decode` 函数放到交互库代码里**，编译运行即可。\n\n如果交互库输出 `Illegaled operation`，你将获得 $0$ 分。可能的原因包括未还原原数组、返回的数组不合法。\n\n否则交互库会输出一个整数，表示你的分数。\n\n**评测交互库**不一定在 `Encode` 后立即 `Decode`，即可能会先对若干个数组进行编码，再逐一解码。\n\n所有的数应均在 $ \\lbrack 0, 998244353 ) $ 范围内。\n\n### 评分方式\n\n设您 `Encode` 返回的最大长度为 $Len$，则得分为 $ \\min( 100, \\lfloor \\frac{1500}{ \\lceil \\frac{Len}{50} \\rceil } \\rfloor ) $。\n\n## Input\n\n无\n\n## Output\n\n无\n\n[samples]\n\n## Background\n\n**这是一道通信题。**\n\n**由于一些原因，本题有特殊的时空限制，且只有三个测试点。**\n\n**您的得分是三个测试点得分的最小值。**\n\n**请选手注意不要用 `C++14 (GCC 9)` 提交。**","is_translate":false,"language":"English"}],"meta":{"iden":"LGP9165","tags":["交互题","Special Judge","O2优化","通信题"],"sample_group":[],"created_at":"2026-03-03 11:09:25"}}