打表

作者: 吴健民IT | 来源:发表于2021-02-05 14:54 被阅读0次

打表

给定一个十进制的正整数(1<=n<=10000),写下从1到n的所有整数,然后数一下其中出现的数字“1”的个数

例如当n=2时,写下1,2,这样只出现1个“1”;当n=12时,写下1,2,3,4,5,6,7,8,9,10,11,12,这样出现5个“1”。

输入

每行有一个数字n

输出

输出占一行,每行一个整数,即“1”的个数

样例输入

2

12

样例输出

1

5

这里用到打表法:打表是一种典型的用空间换时间的技巧,主要用在程序中一次性计算出所有需要用到的结果,之后的查询直接取这些结果。

打一张表格,把需要的东西都保存下来

代码实现:

这里再看一道例题:

题目描述:

字符串APPAPT中包含两个单词“PAT”,其中第一个PAT是由第二位(P)、第四位(A)和第六位(T)组成的;第二个PAT是由第三位(P)、第四位(A)和第六位(T)组成的。

输入:

一个字符串

输出:

输出包含多少个PAT。由于结果可能比较大,因此只输出对1000000007取余的结果

样例输入:

APPAPT

样例输出:

2

打表得:

技巧: 问题可以转换为,对于字符串中每个A,计算它左边P的个数与右边T的个数的乘积,然后把所有A的这个乘积相加就是答案。


相关文章

  • 打表

    打表 给定一个十进制的正整数(1<=n<=10000),写下从1到n的所有整数,然后数一下其中出现的数字“1”的个...

  • (打表)E - Recursive Queries CodeFo

    题意:忘了,反正就是打表题解:打表(前缀和) 代码:

  • 素数打表

  • 分段打表

    适用题目特征 当打表范围过大,但表之间可以递推。 原理 借助分块的思想,答案来自若干子表的组合。即,整块的答案用预...

  • 师傅,“打表”好嘛?

    玫瑰今天有急事,然后出门就叫了出租车。平常去那个地方都是9元,10元就封顶了,然后今天刚坐上车,师傅就说15,顿时...

  • 少年锦时

    打表第一篇

  • 杭电ACM-2138 (求素数 求素数!!!)

    题目: (●ˇ∀ˇ●)嘿嘿 看到这道题马上想到了打表,结果是懵逼的 打表代码(误): OJ的显示是:Runtime...

  • hw4 注意事项 2021-03-26

    计算素数的题目不要打表(去网上抄1000以内的素数表),打表没有成绩,但是现实中是一种解决问题的办法。 打印乘法表...

  • 折扇的正确使用方式

    折扇,颜值爆表,魅力爆表,战斗力爆表,防身武器中的佼佼者,可用来耍帅,还可用来当武器,当剑使。 可以用来打色狼,打...

  • 博弈论SG函数入坑

    重点就是找sg函数的值,然后异或 为0 必败否则 必胜。感谢大佬提供的模板 可用于 打表算SGdfs 暴力打表 例...

网友评论

      本文标题:打表

      本文链接:https://www.haomeiwen.com/subject/ehwitltx.html