dp
文章平均质量分 52
࿐ཉི༗࿆一鲸落,万物生 ༗࿆ཉི࿐
这个作者很懒,什么都没留下…
展开
-
Acwing 1226. 包子凑数(完全背包的应用)
这里判断要用到的结论是,对于给定的两个互质的数字a和b,他们不能拼凑出来的最大的数字是(a-1)*(b-1)-1,对于n个数字,因为这些数字的取值范围是1~100,所以对于最大的两个互质的数字为99和100,所以最大不能拼凑出来的数字不会超过(100-1)*(99-1)-1,我们粗略记为10000,到了这一步之后我们就要去判断在1~10000这个范围内不能拼凑出来的数字有多少了。这里就不难看出,可以直接套用完全背包的思想,dp[i]表示是否能凑出数字i,如果等于0表示不能凑出,等于1表示能够凑出。原创 2023-05-27 18:10:01 · 221 阅读 · 0 评论 -
Acwing 1214. 波动数列
1、如果第i次我们选择加a,那么通过上述公式我们可以知道,对于第i次的选择di,它最终在总和中一共是加了n-i次,所以此时应该从dp[i-1][((j-(n-i)*a)%n+n)%n]转移得到。最后dp[n-1][(s%n+n)%n]就是答案了,因为只有当所有的d加起来的总和%n=s%n时才能整除n。我们设dp[i][j]表示在第i次选择要加的数(a或-b)后,所选择数字的总和取模n等于j的方案的数量。2、同理,如果选择减b,就应该从dp[i-1][((j+(n-i)*b)%n+n)%n]转移得到。原创 2023-05-27 17:36:51 · 234 阅读 · 0 评论 -
蓝桥杯2022年第十三届决赛真题-搬砖
然后就是排序问题,这是本题最主要的难点了(个人认为)。当前物品的重量w,价值v满足,v>=j时,dp[i][j+w]=max(dp[i][j+w],dp[i-1][j]+v)wj+sum>vi(sum为除了物品i,j之外的所有物品的重量和)首先对于所有的j初始化:dp[i][j]=dp[i-1][j]于是可以得到排序条件是wi+vi原创 2023-05-20 11:31:08 · 355 阅读 · 1 评论 -
Codeforces Round #837 (Div. 2) D. Hossam and (sub-)palindromic tree(区间DP+LCA)
现在这个题就是把问题放在了一颗树上,那么我们的思路应该是枚举字符串的左右端点,然后利用LCA的思想找到最近公共祖先,这样整个字符串就已经找到了,然后对于这一段在树上的字符串进行DP,具体细节见代码。定义 s(i,j) 表示将 i→j 路径上结点的字符顺次相接形成的字符串,求所有 s(i,j)的最长回文。这里应该是采用区间DP的方法。否则dp[x][y]=max(dp[x+1][y],dp[x][y-1])如果s[x]==s[y],dp[x][y]=dp[x+1][y-1]+2。原创 2022-12-24 17:00:01 · 209 阅读 · 0 评论 -
Codeforces Global Round 23 D. Paths on the Tree(树形DP+贪心)
对于前val%cnt+1的子节点,f[u][1]+=f[son][1],对于后面的子节点f[u][1]+=f[son][0],注意这里是val%cnt+1,而不是(val+1)%cnt,因为此时结点u是在原来经过val次的基础上额外增加了一 次经过次数两者是不相等的。对于前val%cnt的子节点,f[u][0]+=f[son][1],对于后面的子节点f[u][0]+=f[son][0]f[u][1]:表示结点u多经过一次所能获得的价值。给定一个 n 个节点的有根树,根节点编号为 1。原创 2022-10-18 21:47:03 · 385 阅读 · 0 评论 -
Codeforces Round #826 (Div. 3) E. Sending a Sequence Over the Network
f[i]表示到当前位置为止,序列是否合法。对于一个数字它可以是一段的长度,也可以是一段中的数字,如果它是作为一段的长度,那这一段可能是在这个数的前面也可能在这个数的后面,所有要对前后分别更新,即更新f[i]。如果i-a[i]-1是合法的,那么到当前位一定是合法的,此时表示a[i]是前一段的长度,并且,如果当前位是合法的,那么i+a[i+1]+1也是可合法的,表示a[i+1]作为下一段的长度是合法的。对于每一段,我们要将该段的长度值放在序列的首部或者尾部,所有的段都进行一次这样的操作得到序列b。原创 2022-10-15 22:51:36 · 113 阅读 · 0 评论 -
Codeforces Round #815 (Div. 2) D1. Xor-Subsequence (easy version)
解题思路:这里我们在看题的时候应该格外注意到ai原创 2022-09-22 22:01:33 · 83 阅读 · 0 评论 -
2022杭电多校9 Matryoshka Doll
状态转移:dp[i][j]=dp[i-1][j-1]+dp[i-1][j]*(j-temp),意思是当前第i个套娃可以单独作为一组,也可以和之前的套娃共同作为一组,temp表示对于1原创 2022-08-16 19:53:57 · 254 阅读 · 0 评论 -
2022牛客多校9 BTwo Frogs(概率DP)
题目大意:这里有n个荷叶,前n-1个荷叶上都有一个数,第i个荷叶上的数字a[i]表示当位于该荷叶上时,下一步能跳到的范围是( i,i+a[i] ],有两只青蛙,问我们这两只青蛙从1号跳到n号荷叶的步数相同的概率是多少。...原创 2022-08-15 20:32:14 · 139 阅读 · 0 评论 -
2022杭电多校8 Orgrimmar
当前点选,父亲节点不选:有两种情况,一种是其所有孩子节点都不选,一种是只从所有孩子节点中选一个,因为再选的话就不满足每个点最多关联一条边的条件了,这时枚举所有孩子节点作为选择,从中取一个最大值即可。解题思路:树形DP,对于一个点而言,其孩子节点的选择不仅与该点有关,也和该点父亲节点的选择有关,所以就有了4中状态,当前点选与不选,与该点的父亲节点选不不选,下面我们就来分类讨论。当前点不选,父亲节点不选:那么孩子节点可以选也可以不选,所以可以在这两种情况中取一个最大值加到答案中。...原创 2022-08-11 21:08:45 · 325 阅读 · 0 评论 -
2022牛客多校6 M Z-Game on grid
解题思路:如果当前ALICE要走,如果从当前位置往下走和往右走有一种走法能使ALICE必胜,那么ALICE必胜,如果BOB正在走,如果无论往下走还是往右走都是ALICE必胜的局面,那么ALICE必胜,其他情况更新方法类似,考虑到无后效性这一点我们可以用DP来解决这个问题,而且当前是否必胜取决于下一步是否必胜,所以这个DP我们应该先算出下一步,然后根据下一步得到当前的状态。...原创 2022-08-07 14:10:31 · 93 阅读 · 0 评论 -
杭电多校6 F - Maex (树形DP)
这种按顺序从大到小的数字,并且数字越小就越应该放在更底层的子树中,这样就保证了从底层往上,结点对应b数组的值就越来越大,而我们可以发现b数组的值恰好就是以该点为根的子树中结点的数目,所以我们的。题目大意:给我们一棵树,让我们给树上的每个结点设计一个权值,对于每个结点i有这样一个定义:b[i]是以i为根节点的子树中最小的没有出现过的非负整数,让我们求出所有结点b数组的值之和最大是多少。,所以我们可以先dfs预处理出以该点为根的子树中包含的结点数目,然后再进行第二遍dfs得到一条链上所能获得的最大权值之和。..原创 2022-08-05 16:07:14 · 124 阅读 · 0 评论 -
2022杭电多校3 L - Two Permutations
状态表示f[i][j]表示a序列匹配了1~i个,ai这个数字在s序列中是第j次出现,因为a和b序列都是n个不同的数,所以j只有两个取值,即ai这个数字只会在序列s中出现两次,i有n个取值,这样进行递推就是O(N)级别的算法。状态转移具体见代码,这里大概说一下,先找到a[i]在s中的位置x,然后找到a[i+1]在s中的位置y,判断x+1~y-1之间的序列能否由序列b的某一段去构成,这样就可以从前一个状态推到后一个状态了。如果我们让构成的这个序列R和s完全一样,问我们有多少种不同的构造方法。...原创 2022-07-27 21:59:24 · 195 阅读 · 0 评论 -
2022牛客多校2 L-Link with Level Editor I
一共有n个世界,每个世界有n个点,所有的这n个世界共有m条边,你可以从任意一个世界的1号点出发,在一个世界中,你可以呆在一个点不动,也可以经过一条边走向另一个点,问至少经过多少个世界可以从1号点走到m号点。...原创 2022-07-25 22:17:27 · 122 阅读 · 0 评论 -
2022牛客多校2 K-Link with Bracket Sequence I
状态转移对于当前的位置上括号的选择,可以选择左括号也可以选择右括号,此时与a序列匹配的对应的位置上也有两种情况,所以说我们当前的选择和a序列原有的字符各有两种可能,所以共有4种可能,因为对于同一种选择,由于a的原序列的不同会导致两种不同的状态表示。状态表示dp[i][j][k]表示b的前i个字符,和a的总共子序列长度为j,左括号比右括号多k个的情况。题目大意已知b是一个长度为m的合法括号序列,a是b的一个子序列,现在我们知道a的长度,问满足条件的b有多少种。解题思路动态规划的思想。...原创 2022-07-24 20:16:56 · 259 阅读 · 0 评论 -
2022 牛客多校1 I-Chiitoitsu(概率DP)
题目大意现在初始给我们13张牌,给定的这13张牌中,每两个字符代表一种牌面,每一种牌最多在这13张牌中出现2次,所有的牌一共有34种,每一种牌都有4张,现在牌堆中有34*4-13张牌,每一轮都可以从牌堆中选择一张牌,现在手中拿到14张牌,判断是否满足此时手中的牌恰好构成7种不同的对子,即手中有7种牌,每种牌各有2张,如果不满足,从手牌中选择一张扔掉,以后将不会再抽到这个牌,问我们凑成7个对子所需要的轮数的期望。...原创 2022-07-20 10:18:42 · 74 阅读 · 0 评论 -
I love exam HDU - 6968(01背包的应用)
题目大意给我们n门课程的名称,然后m本复习材料,看完一本复习材料需要花费一定的天数,看完之后该门课能提高一定的分数,初始情况下所有科目的得分均为0,现在我们总共有t天时间来复习,最多挂科p门,问在满足挂科数...原创 2022-07-15 11:51:37 · 144 阅读 · 0 评论 -
2021年HDU多校第二场第11题-6971 I love max and multiply
题目大意:给我们两个序列a0~an-1,b0~bn-1,让我们求出一个新的序列c0~cn-1,满足ck=max(ai*bj),i&j>= k。解题思路:如果i&j>=k,那么i和j应该都是大于k的,所以可以转化成i&j>=i&&0原创 2022-07-14 14:44:08 · 165 阅读 · 0 评论 -
Acwing 1081. 度的数量(数位DP)
题目大意:给我们4个数,X,Y,K,B,要我们求出在区间[ X,Y]之间满足条件的数的个数,题目中说的条件通俗一点来讲就是,把一个数化成B进制的数,如果这个B进制的数中包含K个1就满足条件。解题思路:首先大体思路是我们可以先求出从0~Y和从0~X-1满足条件的数的个数,然后用前者的数量减去后者的数量就可以得到在区间[X,Y]中满足条件的数的个数了,这是用了前缀和的思想。现在的关键就是如何求出0~n之间满足条件的数的个数,我们可以先将n分解成B进制数a0a1a2……ak-1,共有K位,从高位也就是a0开始进行原创 2022-07-08 12:17:33 · 181 阅读 · 0 评论 -
2021牛客暑期多校训练营1 Alice and Bob
题目大意:给定两堆石头,分别有n块和m块,有两个人开始拿石头,每人每次要从一堆石头中拿k(k>0)个,从另一堆中拿s*k个(s>=0),Alice为先手,最后谁不能再拿石头,谁就输了,如果Alice赢就输出"Alice",反之输出"Bob"。解题思路:设置数组f[n][m],表示两堆石子分别有n个和m个时,最终的游戏结果,我们令f[n][m]=1表示此时先手必赢,f[n][m]=0表示先手必输,如果我们根据游戏过程来计算该数组会发现不太好算,即从大石子堆变成小石子堆的计算过程是比较困难的,所以我们这里我们尝原创 2022-07-07 11:26:37 · 189 阅读 · 0 评论 -
Acwing 287. 积蓄程度
有一个树形的水系,由 N−1 条河道和 N 个交叉点组成。我们可以把交叉点看作树中的节点,编号为 1∼N,河道则看作树中的无向边。每条河道都有一个容量,连接 xx 与 yy 的河道的容量记为 c(x,y)。河道中单位时间流过的水量不能超过河道的容量。有一个节点是整个水系的发源地,可以源源不断地流出水,我们称之为源点。除了源点之外,树中所有度数为 1 的节点都是入海口,可以吸收无限多的水,我们称之为汇点。也就是说,水系中的水从源点出发,沿着每条河道,最终流向各个汇点。在整个水系稳定时,每条河道中的水都以单位时原创 2022-07-05 21:25:00 · 126 阅读 · 0 评论 -
Acwing 286. 选课(背包类树形DP)
学校实行学分制。每门的必修课都有固定的学分,同时还必须获得相应的选修课程学分。学校开设了 NN 门的选修课程,每个学生可选课程的数量 MM 是给定的。学生选修了这 MM 门课并考核通过就能获得相应的学分。在选修课程中,有些课程可以直接选修,有些课程需要一定的基础知识,必须在选了其他的一些课程的基础上才能选修。例如《Windows程序设计》必须在选修了《Windows操作基础》之后才能选修。我们称《Windows操作基础》是《Windows程序设计》的先修课。每门课的直接先修课最多只有一门。两门课可能存在相同原创 2022-07-05 16:10:06 · 189 阅读 · 0 评论 -
Acwing 1077. 皇宫看守(树形DP)
根据题目,我们先来分析每个点可能拥有的状态,由题目可知,当一个点上有士兵时,士兵可以看到所有与该点直接相连的点,所以一个点如果可以被看到,可以被分成以下几种状态(1)、该点可以被它的父节点看见。(2)、该点可以被自己看见。(3)、该点可以被它的子节点看见。故可以设置状态f[u][0],f[u][1],f[u][2]分别表示这三种状态。状态转移:(1)、如果该点可以被它的父节点看见(该结点不放士兵),那么该点的孩子结点既可以被自己看看见,也可以被孩子结点的子节点看见,从二者中取一个最小值。(2)、如果该点可以原创 2022-07-01 22:47:59 · 82 阅读 · 0 评论 -
Acwing 285. 没有上司的舞会 AND Acwing 323. 战略游戏(树形DP)
题目大意:没有上司的舞会:有N个人,每个人都有一个开心值,并且给出了每两个人之间的上司关系,约束条件是一个人和这个人的直接上司不能同时参加舞会,目标是求出最大的开心值。战略游戏:以一棵树的形式给定一个城市的网络图,树中有结点有边,当一个士兵站在某个点的时候可以保卫和该点相连的所有边,让我们求解要保卫所有边至少需要多少个士兵。关键信息抽象: 没有上司的舞会:每个边最多选一个点,求选出的所有点权值和的最大值,战略游戏:每个边至少选中一点端点,求求选出的所有点权值和(每个点权值为1)的最小值。状态原创 2022-06-30 17:56:45 · 517 阅读 · 0 评论 -
Acwing 276. I-区域(线性DP)
在 N×MN×M 的矩阵中,每个格子有一个权值,要求寻找一个包含 KK 个格子的凸连通块(连通块中间没有空缺,并且轮廓是凸的),使这个连通块中的格子的权值和最大。注意:凸连通块是指:连续的若干行,每行的左端点列号先递减、后递增,右端点列号先递增、后递减。求出这个最大的权值和,并给出连通块的具体方案,输出任意一种方案即可。输入格式第一行包含三个整数 N,MN,M 和 KK。接下来 NN 行每行 MM 个整数,表示 N×MN×M 的矩阵上每个格子的权值(均不超过 10001000)。输出原创 2022-05-10 22:40:28 · 159 阅读 · 0 评论 -
Acwing 275. 传纸条
小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题。一次素质拓展活动中,班上同学安排坐成一个mm行nn列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了。幸运的是,他们可以通过传纸条来进行交流。纸条要经由许多同学传到对方手里,小渊坐在矩阵的左上角,坐标(1,1)(1,1),小轩坐在矩阵的右下角,坐标(m,n)(m,n)。从小渊传到小轩的纸条只可以向下或者向右传递,从小轩传给小渊的纸条只可以向上或者向左传递。 在活动进行中,小渊希望给小轩传递一张...原创 2022-05-06 22:04:50 · 104 阅读 · 0 评论 -
Acwing 274. 移动服务(线性DP)
一个公司有三个移动服务员,最初分别在位置1,2,3 处。如果某个位置(用一个整数表示)有一个请求,那么公司必须指派某名员工赶到那个地方去。某一时刻只有一个员工能移动,且不允许在同样的位置出现两个员工。从pp到qq移动一个员工,需要花费c(p,q)。这个函数不一定对称,但保证c(p,p)=0。给出NN个请求,请求发生的位置分别为p1∼pN。公司必须按顺序依次满足所有请求,且过程中不能去其他额外的位置,目标是最小化公司花费,请你帮忙计算这个最小花费。输入格式...原创 2022-05-05 22:44:58 · 167 阅读 · 0 评论 -
Acwing 273. 分级(线性DP)
解题思路:我们需要对单调不下降和单调不上升的情况分别求出解,然后求一个最小值就好了。本题的关键在于找到该问题的一个性质:一定存在一组最优解b[i],使得每个b[i]都是原序列中a[i]的值。以下证明来自yxc大佬证明:(这里是那不下降的情况来举例)假设某个最优解如下图所示,其中 {Ai}是原序列,{A′i}是将原序列排序后的序列,图中红色圆圈表示每个 Bi。考虑每个位于 A′i,A′i+1之间的一段 Bi,比如上图中粉色框中的部分。则我们在 {Ai} 中粉色框对应的这段里统...原创 2022-05-04 22:17:07 · 314 阅读 · 0 评论 -
Acwing 272. 最长公共上升子序列(线性DP)
解题思路:状态表示:f[i][j]表示a[1~i]和b[1~j]中,以b[j]结尾的最长公共子序列的长度状态转移:首先肯定要设置两重循环,分别循环i和j下标,每次循环到一个i和j时,会有两种情况出现,如果a[i]!=b[j],那么当前的f[i][j]=f[i-1][j],因为a[i]和b[j]已经是不相等了,所以以b[j]结尾a[1~i],b[1~j]的最长公共子序列的最长长度就等于从a[1~i-1],b[1~j]中选出的最长长度,第二种情况就是a[i]==b[j],那么当前的a[i]和b[...原创 2022-05-04 20:38:43 · 193 阅读 · 0 评论 -
Acwing 271. 杨老师的照相排列
解题思路:通过分析题意,我们可以大致明白题目要我们求的就是给我们N个数,并且规定了每一排有几个数,这些数满足这样的规律:每一行从左到右逐渐递增,每一列从上到下逐渐递增,问我们满足这样规律的矩阵有多少种排法,下面我们来分析一下这个问题,当我们从高到矮排队(数字从小到大排队)的时候,不难发现:性质1:我们当前数只能紧挨着已经填的数填,如果说不紧挨着的话,那么之前填的数和当前填的数之间就会有空隙,之后在填数的时候就会填到这个空里,但是之后填的数都比当前数要大,所以一定不满足数字是从小到大排序的规则。性..原创 2022-05-02 22:06:38 · 309 阅读 · 0 评论 -
ACwing 321. 棋盘分割
解题思路: 首先看到让我们求的是均方差,并给出了均方差的定义,其中的平均数我们在输入完成后就可以求出来,对于均方差,我们在中间计算过程中肯定不能带着根号来计算,因为在中间过程中如果带了根号,到最后会有精度的损失,所以我们在中间计算的时候应该去掉根号,然后最后在输出答案的时候在去开方。现在就来看一下这个问题我们应该如何来进行分析。首先对于一个方格,我们可以横着或者竖着切一刀,切完后,其中一块的分值之和会被计算出来加入到答案中,另一部分会被继续分割,所以在进行了一次分割后分成的2部分在今后不会再有...原创 2022-04-23 16:42:49 · 329 阅读 · 0 评论 -
Acwing 1069. 凸多边形的划分(区间DP)
解题思路:给定我们一个凸多边形,首先我们要知道如何对这个多边形进行划分,我们可以选择的两个点,然后在这两个点之间再选择一个点,这样就构成了一个三角形,这样就把这个凸多边形分成了2个多边形和一个三角形,因为分成的两个多边形之间没有联系,所以这是我们用区间DP来做这道题的基础,我们假设出数组f[i][j]表示从第i个顶点到第j个顶点构成的多边形通过划分得到的所有三角形顶点权值乘积之和的最小值,那么它可以由谁来得到呢?设置中间变量k,i<k<j,选择i,j,k三个点构成一个三角形,并将整个大多边形..原创 2022-04-20 10:49:02 · 405 阅读 · 1 评论 -
蓝桥杯2014年第五届真题-地宫取宝(纯DP/DP+记忆化搜索)
解题思路:1、纯DP思路:dp[x][y][num][maxv]表示走到(x,y)的位置时,选出了num件物品,#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>#include <map>#include <stack>using namespace std;const int N=55;int g[N]...原创 2022-04-08 19:29:02 · 318 阅读 · 0 评论 -
蓝桥杯算法提高-能量项链(区间DP)
解题思路:一开始就理解错题意了,以为是从n个珠子中随机选一个,然后按顺时针挨个合并最后取个最大值就完了,然后提交答案WA在了第50个样例,一开始以为模拟过程模拟的不对,后来发现没有问题,越想越感觉没毛病,没招了只好偷偷瞄了一眼答案,发现理解错题意了QAQ,理解能力实在是太差了,之间重要的比赛在这上面吃了不少亏了,还是改不了,果然是自作孽不可活。回到正题,终于了解了正确题意的我,不由自主的被偷瞄到的答案带到了区间DP上来,额,还是先来说下题意把,给我们了n个数,第i个数表示第i个珠子的头表示是...原创 2022-04-03 20:13:36 · 466 阅读 · 0 评论 -
团体程序设计天梯赛 L3-001 凑零钱 (30 分)
解题思路:本题乍一看好像挺简单,就是个背包问题呗,但是一看要输出字典序最小的路径就懵逼了,所以这个题的难点在于如何记录路径。现在从头开始说,这个题可以看成是一个01背包问题,只不过体积和价值都是m罢了,然后要求输出字典序最小的路径,因为要输出字典序最小的路径,所以我们首先要对输入的序列从大到小进行排序,为啥来?因为当我们在做01背包时,如果在后面出现了合法方案会将前面得到的方案给覆盖掉,所以要把越小的数放在越后面,这样求出来的数就是最小字典序方案了,接下来难点来了,如何记录路径?开一个pre[][]数组..原创 2022-03-21 20:53:39 · 654 阅读 · 0 评论 -
Bullcow 牡牛和牝牛 黑暗爆炸 - 3398
题解:设牡牛位置为1,牝牛位置为0,f[i]表示以第i个位置以1结尾的方案数,下面就是要思考f[i]可以由那些状态来得到,所以f[i]=f[0]+f[1]+......+f[i-k-1],至于为什么是加到f[i-k-1]因为1的前面至少有k个0,所以倒数第2个1的位置最大是在i-k-1处,其位置的取值范围是1……i-k-1,当然也可以一个1都不放,全是0,就是对应的我们的f[0],这里还要特判一种情况就是如果i-k-1<0,那么此时f[i]=f[0],也就是说它可以由前面全是0的方案得到。代码..原创 2022-03-01 22:38:43 · 160 阅读 · 0 评论 -
2021CCPC重现赛Nun Heh Heh Aaaaaaaaaaa
题目大意:给定了一个字符串,问你在给定的字符串中可以找到多少个nunhehheh+个数>=1的a这样的字符串,看这个题之前先来做一道简单一点的题I-I love you_牛客小白月赛21 (nowcoder.com)直接看代码#include <iostream>#include <cstring>#include <cstdio>using namespace std;const int N =684694;char s[N];in...原创 2021-10-12 22:26:18 · 171 阅读 · 1 评论 -
True Liars POJ - 1417 (并查集+01背包)
在一艘小船上漂流了几天之后,Akira Crusoe Maeda 被困在一个雾气弥漫的小岛上。尽管他已经筋疲力尽,但他仍然想起了他童年时从族长那里听到的雾岛的传说,那个传说中的岛屿。在传说中,有两个部落居住在岛上,一个是神族,另一个是恶魔,一旦神圣部落的成员祝福你,你的未来会变得光明而充满希望,灵魂最终会升入天堂,相反,一旦恶魔部落的成员诅咒你,你的未来会变得凄凉无望,灵魂最终会沉入地狱。为了防止最坏的情况发生,Akira 要区分恶魔与神族。但是他该怎么做呢?这些人看起来完全相同,他不能仅仅通过他们的外表原创 2021-10-05 20:26:40 · 146 阅读 · 0 评论