P2371 EXCEEDED WARNING C

题目背景

第三道溢出警告。。。

机(wei)智(suo)的TMXi又搬题来坑大家了。。。

注意时空限制【坏笑】

题目描述

[li]1949年,阿三的数学家D.R. Kaprekar发现了一系列被称为“塞尔夫数”(self-number)的数。对于任意的正整数n,定义 d(n) 是 n 及其各位数字之和。[/li]

[li]比如说,d(75) = 75 + 7 + 5 = 87. 给出任意的正整数 n 作为起点,你将通过n得到一个无限的递增序列: d(n), d(d(n)), d(d(d(n))), .... [/li]

[li]再比如说,如果你以33为起点,则下一个数是33 + 3 + 3 = 39,在下一个是39 + 3 + 9 = 51,之后是51 + 5 + 1 = 57.[/li]

[li]由此,你将可以写出一个数列:33, 39, 51, 57, 69, 84, 96, 111, 114, 120, 123, 129, 141, ... [/li]

[li]n将被称为d(n)的“启发者”。(在上面的数列中,33是39的启发者,39是51的启发者,以此类推……)[/li]

[li]有的数有多个启发者,比如101,91和100都是它的启发者;而有的数没有启发者,比如5,它们就是所谓的“塞尔夫数”.[/li]

[li]我们将第i个塞尔夫数记为a[i],有13个塞尔夫数小于100 : 1, 3, 5, 7, 9, 20, 31, 42, 53, 64, 75, 86, 和 97. (a[1]=1, a[2] = 3, ... , a[13]=97);[/li]

输入输出格式

输入格式:

[b]共两问:[/b]

①输入整数n (n<10^7),并不换行

②输入整数k (k<5000),接下来一行k个数,s1, s2, . . . , sk. (n<10^7时,sk<10^6)

n, k中间是空格(虽说这句废话)

输出格式:

输出应为两行,

第一行是区间[ 1, n ]中塞尔夫数的个数。

第二行k个数,分别对应第i个塞尔夫数,两个数中间以一个半角空格隔开。

输入输出样例

输入样例#1: 复制

100 10
1 2 3 4 5 6 7 11 12 13
输出样例#1: 复制

13
1 3 5 7 9 20 31 75 86 97

说明

空间限制6000KiB

时间限制750ms

筛法:TLE

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define N 10000100
using namespace std;
bool not_self[N];
int b,s,n,k,sum,self[N];
int read()
{
    ,f=; char ch=getchar();
    ;ch=getchar();}
    +ch-',ch=getchar();
    return x*f;
}
int work()
{
    ;i<=n;i++)
    {
        if(!not_self[i])
        {
            self[++sum]=i,b=i;
            while(b<n)
            {
                s=b;
                ,s/=;
                not_self[b]=true;
            }
        }
    }
}
int main()
{
    n=read();work();
    printf("%d\n",sum);
    k=read();
    ;i<=k;i++)
     s=read(),printf("%d ",self[s]);
    ;
}

50分筛法

洛谷——P2371 EXCEEDED WARNING C(50)的更多相关文章

  1. 洛谷——P2368 EXCEEDED WARNING B

    P2368 EXCEEDED WARNING B 题目背景 SGU 107 题目描述 求有多少个平方后末尾为987654321的n位数 输入输出格式 输入格式: 整数n 输出格式: 答案,即[b]“平 ...

  2. 洛谷 P2368 EXCEEDED WARNING B

    P2368 EXCEEDED WARNING B 题目背景 SGU 107 题目描述 求有多少个平方后末尾为987654321的n位数 输入输出格式 输入格式: 整数n 输出格式: 答案,即[b]“平 ...

  3. 洛谷 P2369 EXCEEDED WARNING A 题解

    题目传送门 直接用sort排序最后输出即可.但是数组要使用short int 类型.否则会超内存. #include<bits/stdc++.h> using namespace std; ...

  4. 【bzoj2118&洛谷P2371】墨墨的等式(最短路神仙题)

    题目传送门:bzoj2118 洛谷P2371 这道题看了题解后才会的..果然是国家集训队的神仙题,思维独特. 首先若方程$ \sum_{i=1}^{n}a_ix_i=k $有非负整数解,那么显然对于每 ...

  5. 洛谷P2371 [国家集训队]墨墨的等式

    P2371 [国家集训队]墨墨的等式 题目描述 墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+-+anxn=Ba_1x_1+a_2y_2+-+a_nx_n=Ba1​x1​+a2​y2​+-+a ...

  6. 【同余最短路】【例题集合】洛谷P3403 跳楼机/P2371 墨墨的等式

    接触到的新内容,[同余最短路]. 代码很好写,但思路不好理解. 同余最短路,并不是用同余来跑最短路,而是通过同余来构造某些状态,从而达到优化时间空间复杂度的目的.往往这些状态就是最短路中的点,可以类比 ...

  7. 洛谷P1710 地铁涨价

    P1710 地铁涨价 51通过 339提交 题目提供者洛谷OnlineJudge 标签O2优化云端评测2 难度提高+/省选- 提交  讨论  题解 最新讨论 求教:为什么只有40分 数组大小一定要开够 ...

  8. 洛谷P1371 NOI元丹

    P1371 NOI元丹 71通过 394提交 题目提供者洛谷OnlineJudge 标签云端评测 难度普及/提高- 提交  讨论  题解 最新讨论 我觉得不需要讨论O long long 不够 没有取 ...

  9. 洛谷八月月赛Round1凄惨记

    个人背景: 上午9:30放学,然后因为学校举办读书工程跟同学去书城选书,中午回来开始打比赛,下午又回老家,中间抽出一点时间调代码,回家已经8:50了 也许是7月月赛时“连蒙带骗”AK的太幸运然而因同学 ...

随机推荐

  1. [Leetcode] Linked list cycle ii 判断链表是否有环

    Given a linked list, return the node where the cycle begins. If there is no cycle, returnnull. Follo ...

  2. BZOJ2819 Nim 【dfn序 + lca + 博弈论】

    题目 著名游戏设计师vfleaking,最近迷上了Nim.普通的Nim游戏为:两个人进行游戏,N堆石子,每回合可以取其中某一堆的任意多个,可以取完,但不可以不取.谁不能取谁输.这个游戏是有必胜策略的. ...

  3. 根据select创建input并赋值

    <!DOCTYPE html><html> <head>        <meta charset="UTF-8">         ...

  4. Java Web转发和重定向问题

    0x01:转发情况.转发过程中,只请求一次,request对象设置了之后会一直存在,直到下一次请求. 0x02:重定向情况.会发生两次请求,如果设置了request对象,那么重定向之后,request ...

  5. shell之流程控制

    一.if语句.while.for循环各种小例题 1.用户验证 [root@bogon ~]# cat buer.sh #!/bin/bash #user='buer' #password='1234. ...

  6. 「6月雅礼集训 2017 Day2」C

    [题目大意] 有一棵n个点的完全二叉树,边权均为1,每个点有小鸟容量c[i] 依次来了m只小鸟,第i只小鸟初始位置在pos[i]上,问来了x只小鸟的时候,怎样安排小鸟的路线可以使得小鸟移动的边权和最小 ...

  7. USACO_1.1_Greedy_Gift_Givers_(模拟+水题)

    描述 http://train.usaco.org/usacoprob2?a=y0SKxY0Kc2q&S=gift1 给出不超过$10$个人,每个人拿出一定数量的钱平分给特定的人,求最后每个人 ...

  8. HDU 4320 Arcane Numbers 1 (数论)

    A - Arcane Numbers 1 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64 ...

  9. swift方法 的写法,ui上拖拽的控件到controller里面的方法

    直接点xcode右上角三个按键中间一下,左右拆分为storyboard和controller, 点击button,按ctrl,然后拖拽到controller里面即可生成对应的点击事件在controll ...

  10. I wrote a JSONHelper extension

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using Newtonso ...