【博弈论】Nim游戏:台阶、集合、拆分(AcWing)

159 篇文章 15 订阅
订阅专栏
18 篇文章 2 订阅
订阅专栏

AcWing 891. Nim游戏

参考:
AcWing 891. Nim游戏
AcWing 891. Nim游戏题解:文字部分来自这里
异或的含义

公平组合游戏

若一个游戏满足:

  1. 由两名玩家交替行动
  2. 在游戏进行的任意时刻,可以执行的合法行动与轮到哪位玩家无关
  3. 不能行动的玩家判负

则称该游戏为一个公平组合游戏

尼姆游戏(NIM)属于公平组合游戏,但常见的棋类游戏,比如围棋就不是公平组合游戏,因为围棋交战双方分别只能落黑子和白子,胜负判定也比较负责,不满足条件2和3。

必胜状态和必败状态

在解决这个问题之前,先来了解两个名词:
必胜状态,先手进行某一个操作,留给后手是一个必败状态时,对于先手来说是一个必胜状态。即先手可以走到某一个必败状态。
必败状态,先手无论如何操作,留给后手都是一个必胜状态时,对于先手来说是一个必败状态。即先手走不到任何一个必败状态。

结论与证明

假设n堆石子,石子数目分别是a1,a2,…,an,如果a1⊕a2⊕…⊕an≠0,先手必胜;否则先手必败。

结论的证明

已知:

  1. 当没有石子可以拿,即所有石子个数都是0,有0 ^ 0 ^ 0……^ 0=0;(终点)
  2. 当还有石子可以拿,假设剩下的石子的异或值为x,有a1 ^ a2 ^ a3 …… ^ax =x!=0;

要证明上面的结论,也就是要证明:若在第二种情况,我们一定可以通过拿走若干石子让剩下的异或值变成0;

假设x的二进制表示中,最高的一个1在第k位。则a1~an中必然存在一个数ai的二进制表示的第k位是1。
那么x ^ ai < ai(因为它们的第k位都是1,异或之后第k位就变成0了)。
则我们可以 拿走ai - (ai ^ x) 个石子,使得第i堆还剩下ai ^ x个石子。此时,剩下的石子的异或值为:a1 ^ a2 ^ …… ^ ai ^ x ^… ^an=x ^ x=0;(从a1异或到an等于x,再异或一个x——异或满足交换律与结合律)。

于是我们就证明了:若在第二种情况,我们一定可以通过拿走若干石子让剩下的异或值变成0;

看起来更清晰专业的证明:
在这里插入图片描述
因此,先手必胜要求初始石子的异或值不为0,然后他拿了之后才变成0,后手没法操作了,先手必胜。

代码

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define fir(i,a,n) for(int i=a;i<=n;i++)
const int N=1e5+10;
int n;
int main()
{
	cin>>n;
	int ans=0;
	while(n--)
	{
		int t;cin>>t;ans^=t;
	}
	if(ans) puts("Yes");
	else puts("No");
	return 0;
}

AcWing 892. 台阶-Nim游戏

AcWing 892. 台阶-Nim游戏

结论:当先手奇数台阶上的值异或值为0,则先手必败。反之必胜。

证明:
看的这个题解,非常清晰
有上面题目的铺垫,应该很好理解。
在这里插入图片描述
代码:

#include<bits/stdc++.h>
using namespace std;
#define fir(i,a,n) for(int i=a;i<=n;i++)
const int N=1e5+10;
int n;
int main()
{
	int ans=0;
	cin>>n;
	fir(i,1,n)
	{
		int t;cin>>t;
		if(i%2)
		{
			ans^=t;
		}
	}
	if(ans) cout<<"Yes";
	else cout<<"No";
	return 0;
}

AcWing 893. 集合-Nim游戏

AcWing 893. 集合-Nim游戏
灰之魔女大佬的题解:AcWing 893. 集合-Nim游戏
Anoxia_3大佬的题解

先了解几个概念:
Mex运算

设S表示一个非负整数集合.定义mex(S)为求出不属于集合S的最小非负整数运算,即: mes(S)=min{x};

例如:

S={0,1,2,4},那么mes(S)=3;
S={1,2,4},那么mes(S)=0;

SG函数

在有向图游戏中,对于每个节点x,设从x出发共有k条有向边,分别到达节点y1,y2,····yk,定义SG(x)的后记节点y1,y2,····
yk的SG函数值构成的集合在执行mex运算的结果,即: SG(x)=mex({SG(y1),SG(y2)····SG(yk)})
特别地,整个有向图游戏G的SG函数值被定义为有向图游戏起点s的SG函数值,即 SG(G)=SG(s).

性质:

1.SG(i)=k,则i最大能到达的点的SG值为k−1
2.非0可以走向0
3.0只能走向非0

定理
若先手的SG状态非0,则先手必胜。

证明:
已知终点的SG值为0.
若先手SG非0,则它肯定可以一顿操作使SG变为0,此时到了后手。后手无论怎么操作都是从0到非0,也就是说,先手SG总会是非0,后手SG总会是0。
因此先手SG非0则先手必胜。

更严谨的证明:来自 Anoxia_3大佬的题解
在这里插入图片描述
有向图游戏的和

设G1,G2,····,Gm是m个有向图游戏.定义有向图游戏G,他的行动规则是任选某个有向图游戏Gi,并在Gi上行动一步.G被称为有向图游戏G1,G2,·····,Gm的和.
有向图游戏的和的SG函数值等于它包含的各个子游戏SG函数的异或和,即: SG(G)=SG(G1)xorSG(G2)xor···xorSG(Gm)

定理:(SG函数的终极意义)
对于n个图,如果SG(G1) ^ SG(G2) ^ … SG(Gn)!=0 ,则先手必胜,反之必败
证明:(来自上面的链接,与NIM游戏证明方式一样)
在这里插入图片描述

对于这道题:
假设有一堆石子,10个,每次只能拿S={2,5}个,那么这一张图的SG值为:(红色的是SG值)
在这里插入图片描述
如果有n堆石子,那其实就是n个有向图。

代码:

#include<bits/stdc++.h>
using namespace std;
#define fir(i,a,n) for(int i=a;i<=n;i++)
const int N=1e5+10;
int n,m;
int f[N];//判断这个状态是否搜过 
int a[105];//集合 
int sg(int x)
{
	if(f[x]!=-1) return f[x];
	
	unordered_set<int>s;
	for(int i=1;i<=n;i++)
	{
		if(x>=a[i]) s.insert(sg(x-a[i]));		
	}
	for(int i=0;;i++)
	{
		if(s.count(i)==0) 
		{
			return f[x]=i;
		}
	}
}
int main()
{
	cin>>n;
	fir(i,1,n) cin>>a[i];
	memset(f,-1,sizeof(f));
	int ans=0;
	cin>>m;
	while(m--)
	{
		int x;cin>>x;
		ans^=sg(x);
	}
	if(ans) puts("Yes");
	else puts("No");
	return 0;
}

y总的带有注释的代码:来自 Anoxia_3大佬的题解

#include <iostream>
#include <unordered_set>
#include <cstring>

using namespace std;

const int N = 110 , M = 10010;

int n , m;
int s[N] , f[M];

int sg(int x)
{
    if(f[x] != -1) return f[x];//记忆化搜索,如果f[x]已经被计算过,则直接返回

    // 因为这题中较大堆的拆分情况独立于较小堆,因此有别于894.拆分-Nim,这里的S必须开成局部变量
    unordered_set<int> S;//用一个哈希表来存每一个局面能到的所有情况,便于求mex

    for(int i = 0 ; i < m ; i++)
        if(x >= s[i]) S.insert(sg(x - s[i]));//如果可以减去s[i],则添加到S中

    for(int i = 0 ; ; i++)//求mex(),即找到最小并不在原集合中的数
        if(!S.count(i)) return f[x] = i;

}

int main()
{
    cin >> m;
    for(int i = 0 ; i < m ; i++)    cin >> s[i];

    memset(f , -1 , sizeof f);

    cin >> n;
    int res = 0;
    while(n--)
    {
        int x;
        cin >> x;
        res ^= sg(x);
    }


    if(res) puts("Yes");
    else puts("No");
    return 0;
}

AcWing 894. 拆分-Nim游戏

AcWing 894. 拆分-Nim游戏
Anoxia_3的题解

拆分Nim与集合Nim的联系:
在这里插入图片描述
代码:

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define fir(i,a,n) for(int i=a;i<=n;i++)
const int N=1e5+10;
int n,f[N];
unordered_set<int>s;
int sg(int x)
{
	if(f[x]!=-1) return f[x];
	
	for(int i=0;i<x;i++)
		for(int j=0;j<=i;j++)
		{
			s.insert(sg(i)^sg(j));
		}
	
	for(int i=0;;i++)
		if(s.count(i)==0)		
			return f[x]=i;
		
}
int main()
{
	cin>>n;
	memset(f,-1,sizeof(f));
	int ans=0;
	for(int i=0;i<n;i++)
	{
		int x;cin>>x;
		ans^=sg(x);
	}
	if(ans) puts("Yes");
	else puts("No");
	return 0;
}

关于拆分为什么是:

for(int i=0;i<x;i++)
		for(int j=0;j<=i;j++)

而不是找i与x-i的理解:
假设x为10,那么会出现0与10,也会出现1与9…小于10的每个数字都会出现,且10拆分成1与9后,又要对9进行拆分…再对8、7、6等拆分,所以要双层循环把所有可能都遍历一遍。
也就是说,循环中会遍历到i=0和j=0,是因为10拆分成0和10后会再对0拆分,而不是0+0=10的缘故。

NimGame:Nim游戏
02-03
NimGame 尼姆游戏使用说明您将与Nim博士对战! 将会产生大量的弹珠,您的任务是拿走弹珠,直到一个玩家拿走最后一个弹珠为止。 最后一个弹珠的人输了! 您最多只能占用每回合剩余弹珠总数的一半。 举例:如果还有40...
博弈论详解(Nim游戏台阶-Nim游戏集合-Nim游戏拆分-Nim游戏
lxy___lxy的博客
04-23 981
详解博弈论的思路过程和博弈论
博弈论Nim游戏)
ylh的博客
05-31 1870
题目要求:给你 n 堆石子,两个人轮流取石子,每次选择一堆,可以取出这一堆的任何数量的石子,直到某个人无法再取出任何石子,则另一个人就赢了。因此我们就可以创造先手的必胜态,则对于后手的来说一定是必输态。阶上去,直到最后台阶为0时,无法再移动,问能否先手必胜?,则可以证明,一个必胜态一定可以转换得到一个必输态。第一个人取第一堆,第二个人取第二堆,则第一个人必输。则通过上面的描述,一个必胜态一定可以转换为必输态。的位置,则最后就可以把一个必胜态转变为必输态。的情况,则就是甲先手赢的选择的情况。
NIM游戏讲解(超级全面,SG函数代码模板,三种题型)
最新发布
小虾米的博客
08-15 801
Nim 游戏 n堆物品,每堆有m 个,两个玩家轮流取走任意一堆的任意个物品,但不能不取。 取走最后一个物品的人获胜。 我们先来看第一道题目 题目一: 给定n堆石子,两个玩家轮流操作,每次可以从任意一堆石子中拿走任意数量的石子,可以拿完但不能不拿。无法操作者视为失败。问先手是否存在必胜策略。 输入格式: 第一行包含整数n。第二行包含n个数字,其中第i个数字表示第i堆石子的数量。 输出格式: 如果先手方必胜,则输出“Yes”。 Nim游戏模型,有个结论,设每堆石子个数分别是。 NI
台阶--Nim游戏博弈论
m0_51367574的博客
09-07 426
问题: 现在,有一个nn级台阶的楼梯,每级台阶上都有若干个石子,其中第ii级台阶上有aiai个石子(i≥1i≥1)。 两位玩家轮流操作,每次操作可以从任意一级台阶上拿若干个石子放到下一级台阶中(不能不拿)。 已经拿到地面上的石子不能再拿,最后无法进行操作的人视为失败。 问如果两人都采用最优策略,先手是否必胜。 输入格式 第一行包含整数nn。 第二行包含nn个整数,其中第ii个整数表示第ii级台阶上的石子数aiai。 输出格式 如果先手方必胜,则输出Yes。 ...
博弈论---Nim游戏(公平组合游戏,概念,证明异或为0就是必败态,示例)
weixin_63001635的博客
02-29 2946
游戏使用一堆物品,例如棋子、石头或者硬币,这些物品被分成几堆,每堆可以有任意数量的物品。Nim游戏的关键在于掌握取物品的策略,因为有正确的方法可以确保你获胜,无论对手怎么移动。这个策略涉及到让每一堆物品的数量保持在特定的模式,这样你就可以控制游戏的走向,迫使对手进入必败局面。NIM博弈属于公平组合游戏,但城建的棋类游戏,比如围棋,就不是公平组合游戏。给定 n 堆石子,两位玩家轮流操作,每次操作可以从任意一堆石子中拿走任意数量的石子(可以拿完,但不能不拿),最后无法进行操作的人视为失败。
博弈论——组合游戏(Bash和nim
GMOW_MoveOn的博客
05-08 601
就是说nim游戏是一堆石子不能增加的游戏,要不断地从其中的一堆石子中取走一些石子,然后台阶nim游戏就是说,把奇数层的阶梯维护成一个nim游戏,根据nim游戏的规则,当奇数层的异或和不为0的时候,先手胜,因为如果后手将偶数层的石子移动到奇数层,先手可以将该奇数层被移过来的石子,又移到下一层偶数层,此时奇数层的状态不受影响,后手想改变状态的话,就要将奇数层的石子移到偶数层,那这时异或和由0变为正整数,先手始终能从奇数层上一部分石子,使得异或和又变成零。如果一开始奇数层的异或和为0的话,同理,但会是后手胜。
【模板题】几种常见的Nim游戏博弈论
一只快乐的小蒟蒻~
10-26 8714
【题目描述】 给定nnn堆石子,两位玩家轮流操作,每次操作可以从任意一堆石子中拿走任意数量的石子(可以拿完,但不能不拿),最后无法进行操作的人视为失败。 问如果两人都采用最优策略,先手是否必胜。 【输入格式】 第一行包含整数nnn。 第二行包含nnn个数字,其中第iii个数字表示第iii堆石子的数量。 【输出格式】 如果先手方必胜,则输出Yes。 否则,输出No。 【数据范围】 1≤n≤1051≤n≤10^51≤n≤105 1≤每堆石子数≤1091≤每堆石子数≤10^91≤每堆石子数≤109 【输入样例】
浅析博弈论经典模型——Nim游戏.pptx
11-17
给出n列珍珠,两人轮流取珍珠,...后来,在一份资料上看到,这种游戏称为“拈(Nim)”。据说,它源自中国,经由被贩卖到美洲的奴工们外传。辛苦的工人们,在工作闲暇之余,用石头玩游戏以排遣寂寞。后来流传到高级人士
NIM 游戏NIM 游戏的 GUI 实现-matlab开发
05-30
玩家和电脑轮流取出筹码。 每个人都可以根据需要从一堆筹码中取出尽可能多的筹码。 赢得在棋盘上获得最后筹码的玩家。 反向玩,最后一个筹码者输了。 单击一个筹码会删除它以及它上面的筹码。 作弊按钮为您做出最好...
nimgame:用于Nimrod语言的简单2D游戏引擎
02-03
**Nimgame:Nimrod语言的2D游戏开发** Nimgame是一个针对Nimrod编程语言(现称为Nim)的轻量级2D游戏引擎。它为开发者提供了创建简单2D游戏所需的基本功能,使得游戏开发变得更加便捷。Nim是一种现代、静态类型的...
Nim Advanced:尼姆游戏-开源
04-27
**Nim游戏开源项目概述** Nim游戏,源自一个古老的策略游戏,以其简单的规则和深邃的策略性著称。这个游戏通常由多堆石子组成,玩家轮流从任意一堆中取出任意数量的石子,目标是在对手取完石子之前清空所有堆。现在...
Nim 游戏
qq_64659497的博客
03-24 414
巴什博弈问题
博弈论Nim 游戏
blind5883的博客
06-23 1220
Mex运算设SSS表示一个非负整数集合。定义mex⁡SmexS为求出不属于集合SSSmex⁡Smin⁡xmexSminxxxx属于自然数,且xxx不属于SSS。有向图游戏给定一个有向无环图,图中有一个唯一的起点,在起点上放有一枚棋子。两名玩家交替地把这枚棋子沿有向边进行移动,每次可以移动一步,无法移动者判负。该游戏被称为有向图游戏。任何一个公平组合游戏都可以转化为有向图游戏
Nim游戏详解
a_forever_dream的博客
03-12 6369
文章目录废话正题证明举个栗子拓展题 废话 这是一个过于经典且过于常见的博弈论模型,入门博弈论的话,首先肯定是要知道这个的。 正题 NimNimNim 游戏的规则:有 nnn 堆石子,第 iii 堆石子有 aia_iai​ 个,每次可以从某一堆中取走若干个,先后手轮流取,最后无石子可取的人负。 首先给出结论:将这 nnn 堆石子的数量异或起来(即 a1 xor a2 x...
Nim游戏
qq_39378221的博客
08-01 999
文章目录1 背景2 问题描述3 特殊情况4 一般情况5 例子6 直接判断胜负的方法7 参考资料 1 背景   根据百度百科:Nim游戏博弈论中最经典的模型(之一),它又有着十分简单的规则和无比优美的结论 Nim游戏是组合游戏(Combinatorial Games)的一种,准确来说,属于“Impartial Combinatorial Games”(以下简称ICG)。 2 问题描述   Nim游戏是一种两个人玩的游戏,玩家面前是一堆石头,假设有k≥1k\ge 1k≥1堆石头,每堆分别有n1,n2,⋯ ,n
集合nim(C++)
热门推荐
falldeep的算法世界
07-28 2万+
给定 n 堆石子以及一个由 k 个不同正整数构成的数字集合 S。现在有两位玩家轮流操作,每次操作可以从任意一堆石子中拿取石子,每次拿取的石子数量必须包含于集合 S,最后无法进行操作的人视为失败。问如果两人都采用最优策略,先手是否必胜。输入格式第一行包含整数 k,表示数字集合 S 中数字的个数。第二行包含 k 个整数,其中第 i 个整数表示数字集合 S 中的第 i 个数 si。第三行包含整数 n。第四行包含 n 个整数,其中第 i 个整数表示第 i 堆石子的数量 hi。输出格式。
博弈论NIM游戏台阶型,集合型,SG函数,详解
EQUINOX1的博客
03-02 1438
博弈论,比较有趣的数学问题
(转载)Nim游戏博弈(收集完全版)
lethic的专栏
10-06 3460
Nim游戏的概述: 还记得这个游戏吗? 给出n列珍珠,两人轮流取珍珠,每次在某一列中取至少1颗珍珠,但不能在两列中取。最后拿光珍珠的人输。 后来,在一份资料上看到,这种游戏称为“拈(Nim)”。据说,它源自中国,经由被贩卖到美洲的奴工们外传。辛苦的工人们,在工作闲暇之余,用石头玩游戏以排遣寂寞。后来流传到高级人士,则用便士(Pennies),在酒吧柜台上玩。 最有名的玩法,是把十二枚便
写文章

热门文章

  • 【猴博士】概率论与数理统计 笔记总结(完结) 33171
  • 【前端】Vue+Element UI案例:通用后台管理系统-项目总结 26188
  • 【数据结构】知识点总复习 16325
  • 【前端】Vue+Element UI案例:通用后台管理系统-导航栏 15729
  • 【电路与电子技术】笔记 (完结) 12325

分类专栏

  • 前端小问题 10篇
  • ElementPlus源码阅读 4篇
  • 文档/技术书籍 阅读笔记 2篇
  • 随记 2篇
  • 学校专业课 35篇
  • 【猴博士】概率论与数理统计笔记 17篇
  • 【操作系统】王道考研笔记(完结) 46篇
  • 【计算机网络】湖科大课堂(完结) 25篇
  • ————前端———— 16篇
  • React 1篇
  • TypeScript 6篇
  • CSS 1篇
  • angular 5篇
  • 前端demo 12篇
  • 小程序 8篇
  • 前端八股文与面试 10篇
  • 前端案例 53篇
  • JavaScript 16篇
  • ————后端————
  • 从零开始的Java开发 31篇
  • JAVA核心技术 3篇
  • JAVA 10篇
  • Debug 7篇
  • ————题解———— 6篇
  • LeetCode与《代码随想录》 13篇
  • 好题 22篇
  • 做题与算法总结 18篇
  • 数据结构题 3篇
  • 我的ACM之路 159篇
  • ————算法————
  • 算法 15篇
  • 数据结构与算法 3篇
  • ————总结———— 3篇
  • 大佬博客:值得收藏 1篇
  • ————其他————

最新评论

  • el-radio单选框的选中与取消

    果粒橙er: @click.native.prevent这样就可以啦

  • el-radio单选框的选中与取消

    karshey: 文档上没有,但是@click代码可以生效

  • el-radio单选框的选中与取消

    敲代码无敌小奶龙: el-radio没有click

  • el-radio单选框的选中与取消

    敲代码无敌小奶龙: el-radio有点击事件吗

  • 【前端】Vue+Element UI案例:通用后台管理系统-代码总结(已开源)

    karshey: 你解决一下控制台报错啊,或者安装依赖什么的

大家在看

  • 国庆节有什么值得入手的好物?盘点五款必入的数码好物分享!
  • 基于nodejs+vue逍遥大药房管理系统[开题+源码+程序+论文]计算机毕业设计
  • 模板:JDBC 连接数据库并实现 CRUD
  • 怎么把细长表格打印到一个页面上? 1
  • CSS 的元素显示模式简单学习 87

最新文章

  • 【前端】自动回复点击生成新的自动回复:下发html在前端生成dom,点击调用方法
  • 【前端】上传视频,截取第一帧图片
  • 【前端】原生实现图片的放大与缩放
2024年21篇
2023年97篇
2022年187篇
2021年212篇
2020年38篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

karshey

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家四川特色商场美陈销售阿勒泰玻璃钢花盆商丘广场标识玻璃钢仿铜雕塑新余玻璃钢雕塑设计遵义商场美陈效果图佳木斯玻璃钢雕塑制作厂家天津园林玻璃钢雕塑庆阳大型玻璃钢雕塑制作庆阳玻璃钢牛雕塑济南卡通玻璃钢雕塑西宁玻璃钢博物馆雕塑玻璃钢葫芦福禄雕塑玻璃钢人像雕塑价格福建商业商场美陈供应商菏泽室外玻璃钢彩绘雕塑公司玻璃钢雕塑手绘海报富阳区玻璃钢雕塑抚顺玻璃钢雕塑厂家温州玻璃钢雕塑哪家便宜宜春仿铜西式玻璃钢雕塑重庆玻璃钢红军雕塑玻璃钢花盆粘土手工太原玻璃钢雕塑来图加工制作广东多彩玻璃钢雕塑定制清远主题玻璃钢雕塑定制厂家公仔玻璃钢卡通雕塑制作玻璃钢花盆改造柜子榆林玻璃钢雕塑深圳罗湖玻璃钢花盆安徽玻璃钢雕塑哪里有香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化