2019“西邮杯”初赛题解

1、加法变乘法
题目描述:

 已知X可以写成从1开始连续若干个整数的和, 现在要求把其中两个不相邻的加号变乘号,使得结果为Y。找出所有满足条件的可能答案并输出(把两个乘号左边的数字用小括号括起来,中间用英文逗号间隔,两个括号之间不空格);若找不到满足的条件,则输出“NONE”字样。编写程序,完成n组数据的判定。

例如:当X为1225,Y为2015时
因为:1+2+3+ ... + 49 = 1225
   1+2+3+...+1011+12+...+2728+29+...+49 = 2015
所以:一个解为(10,27)。

输入

第一行为n值,接下来依次n行的第一个数据是加法结果X,第二个数据是变乘法后的结果Y,以空格间隔。

输出

输出n行,每一行的格式为“(,)(,)”(或者“NONE”)。请严格按照格式书写,不能出现其它文字或符号。

样例输入

3
1225 2015
1224 2015
1275 2065

样例输出

(10,27)(16,24)
NONE
(10,27)(16,24)

题解:观察题目,用X和Y减去变化的量,最后结果相同即满足条件。

源代码:

#include<stdio.h>
#include<string.h>
int main()
{
    int i,j;
    int x,y,n,flag;
    scanf("%d",&n);
    while(n--)
    {
        flag=1;
        scanf("%d %d",&x,&y);
        for(i=1;i<x;i++)
        {
            for(j=i+2;j<y;j++)
            {
                if(i*i-i+j*j-j-2==y-x)   //化简后的结果
                {
                    flag=0;
                    printf("(%d,%d)",i,j);
                }
            }
        }
        if(flag==1)
        {
            printf("NONE"); 
        }
        printf("\n");
    }
}

2、互满数

题目描述

编写求因子和函数,该函数返回形参n的因子之和。要求调用该因子和函数,求出x范围内(包含x)所有的互满数。所谓互满数是指:如果有两个数,每一个数的所有因子之和恰好等于对方,则称这两个数为“互满数”。

输入

从键盘输入一个正整数x。

输出

从小到大依次输出互满数,每对互满数用小括号括起来(小数在前,大数在后),中间用英文逗号间隔,两个括号之间不空格。

样例输入

10000

样例输出

(220,284)(1184,1210)(2620,2924)(5020,5564)(6232,6368)

本题刚开始我的思路是:用函数写。先写一个函数专门用来计算每个数的因子和,再在主函数里面利用循环和、引入函数、判断条件的方式来找出一定范围内的互满数。

源代码:

#include<stdio.h>
int SUM(int n)
{
    int i,sum=0;
    for(i=1;i<=n/2;i++)
    {
        if(n%i==0)
        {
            sum=sum+i;
        }
    }
    return sum;
}
int main()
{
    int x;
    scanf("%d",&x);
    int i,j;
    int t1,t2;
    for(i=2;i<x;i++)
    {
        t1=SUM(i);
        for(j=i+1;j<x;j++)
        {
            t2=SUM(j);
            if(t1==j && t2==i && i!=j)
            {
                printf("(%d,%d)",i,j);
            }
        }
    }

}

但是这样的代码由于循环嵌套的过多,导致过大的数字运行速度非常慢,会超时,所以这样的方法是无法提交正确的。

后来咨询了大佬,大佬给了一个相对我的而言比较优化的代码:

#include<stdio.h>
int main()
{
    int x;
    scanf("%d",&x);
    int i,j,k;
    int sum1=0,sum2=0;
    for(i=2;i<=x;i++)
    {
        sum1=0,sum2=0;
        for(j=1;j<=i/2;j++)
        {
            if(i%j==0)
            {
                sum1=sum1+j;
            }
        }
        if(i>=sum1)
            continue;   //减少重复
        for(k=1;k<=sum1/2;k++)
        {
            if(sum1%k==0)
            {
                sum2=sum2+k;
            }
        }
        if(sum2==i)
        {
            printf("(%d,%d)",sum1<sum2?sum1:sum2,sum1>sum2? sum1:sum2);    //双目运算:第二个逗号之前 比较sum1和sum2的大小,如果sum1比sum2小,则输出sum1。 第二个逗号之后  比较sum1和sum2的大小,如果sum1比sum2大,则输出sum1。
        }
    }
 } 
3、按价格排序并输出
题目描述

一本图书的信息有: 编号、书名、作者、出版社、出版日期、价格。设计一个结构体类型描述图书信息,并实现输入多本(不超过20本)图书信息,存储在该结构体的数组变量中,按价格从低到高排序并输出图书信息。

输入

第一行输入图书的本数,以后每行输入一本图书的信息;每本图书信息的输入说明如下:输入时,各个信息之间空格间隔;编号为整数;书名、作者、出版社均为长度不超过20的字符串;出版日期的输入格式为yyyy-mm-dd,例如(2017-5-2);价格为实数。

输出

以列表方式输出:(注意,输出中除了汉字外,其他符号均为英文符号
第一行输出标题行,分别输出:“编号”、“书名”、“作者”、“出版社”、“出版日期”、“价格”;相邻两项之间以一个空格间隔。(参见样例)
以后每行输出一本书,依次输出<编号>,<书名>,<作者>,<出版社>,<出版日期>,<价格(小数点后保留2位)>,相邻两项之间以一个空格间隔。(参见样例)

样例输入

4
2 数据结构 耿国华 高等教育出版社 2005-7-1 28.00
4 大学英语 LEE 清华出版社 1990-4-1 34.6
6 草莓点心 噼里啪啦 二十一世纪出版社 2008-8-8 18.00
7 车来了 噼里啪啦 二十一世纪出版社 2008-9-9 18.50

样例输出

编号 书名 作者 出版社 出版日期 价格
6 草莓点心 噼里啪啦 二十一世纪出版社 2008年8月8日 18.00
7 车来了 噼里啪啦 二十一世纪出版社 2008年9月9日 18.50
2 数据结构 耿国华 高等教育出版社 2005年7月1日 28.00
4 大学英语 LEE 清华出版社 1990年4月1日 34.60

本题就是简单的结构体的运用,冒泡排序的运用

代码源:

#include<stdio.h>
struct Book
{
    int num;
    char name[20];
    char editor[20];
    char pub[40];
    int year;
    int moth;
    int day;
    float price;
};
int main()
{
    int n;
    scanf("%d",&n);
    struct Book book[n];
    struct Book t;
    int i,j;
    for(i=0;i<n;i++)
    {
        scanf("%d",&book[i].num);
        scanf("%s",book[i].name);
        scanf("%s",book[i].editor);
        scanf("%s",book[i].pub);
        scanf("%d-%d-%d",&book[i].year,&book[i].moth,&book[i].day);
        scanf("%f",&book[i].price);
    }
    for(i=0;i<n;i++)
    {
        for(j=0;j<n-1-i;j++)
        {
            if(book[j].price>book[j+1].price)
            {
                t=book[j];
                book[j]=book[j+1];
                book[j+1]=t;
            }
        }
    }
    printf("编号 书名 作者 出版社 出版日期 价格\n");
    for(i=0;i<n;i++)
    {
        printf("%d ",book[i].num);
        printf("%s ",book[i].name);
        printf("%s ",book[i].editor);
        printf("%s ",book[i].pub);
        printf("%d年%d月%d日 ",book[i].year,book[i].moth,book[i].day);
        printf("%0.2f\n",book[i].price);
    }
}
4、乘积最大
题目描述

设有一个长度为N的数字串,要求选手使用K个乘号将它分成K+1个部分,找出一种分法,使得这K+1个部分的乘积能够为最大。
同时,为了帮助选手能够正确理解题意,主持人还举了如下的一个例子:
有一个数字串:312, 当N=3,K=1时会有以下两种分法:
1、3 x12=36
2、31 x 2=62
这时,符合题目要求的结果是:31*2=62。
现在,请你帮助你的好朋友设计一个程序,求得正确的答案。

输入

输入共有两行:
第一行共有2个自然数N,K(4≤N≤10,1≤K≤5)。
第二行是一个长度为N的数字串。

输出

一个整数,表示所求得的最大乘积。

样例输入

4 2
1231

样例输出

62

本题要运用动态规划
暂时没有完成,等更新......

5、星系炸弹
题目描述

在X星系的广袤空间中漂浮着n个X星人造“炸弹”,每个炸弹都可以设定多少天之后爆炸。例如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日,星期五爆炸。

输入

第一行为n值,以后连续n行为炸弹放置日期(格式为 年-月-日)和定时天数(整型)。

输出

输出n行,每行为爆炸的准确日期(格式为 yyyy年mm月dd日 星期几),日期和星期之间用一个空格隔开。请严格按照格式书写,不能出现其它文字或符号。

提示信息:

星期的数据集合是【星期日、星期一、星期二、星期三、星期四、星期五、星期六】。1900年1月1日,是星期一。

样例输入

2
1999-9-9 800
2014-11-9 1000

样例输出

2001年11月17日 星期六
2017年08月05日 星期六

该题及为时间计算题,要注意对平年闰年的推导计算和星期的推导计算

代码源:

#include<stdio.h>
void DAY(int year,int month,int day,int days)
{
    char week[7][10]={"星期一","星期二","星期三","星期四","星期五","星期六","星期日"}; 
    int monthday[12]={31,28,31,30,31,30,31,31,30,31,30,31}; 
    int i;
    int s=0,t;
    for(i=0;i<days;i++)
    {
        day++;
        if(day>monthday[month-1])
        {
            day=1;
            month++;
            if(month==13)
            {
                month=1;
                year++;
                if((year%4==0 && year%100!=0) ||year%400==0)
                {
                    monthday[1]=29;
                }
                else
                    monthday[1]=28;
            }
        }
    }
    if(month>9 && day>9)
    {
        printf("%d年%d月%d日 ",year,month,day);
    }
    if(month>9 && day<=9)
    {
        printf("%d年%d月0%d日 ",year,month,day);
    }
    if(month<=9 && day>9)
    {
        printf("%d年0%d月%d日 ",year,month,day);
    }
    else if(month<=9 && day<=9)
    {
        printf("%d年0%d月0%d日 ",year,month,day);
    }
    for(i=1990;i<year;i++)
    {
        if((i%4==0 && i%100!=0) ||i%400==0)
        {
            s=s+366;
        }
        else
            s=s+365;
    }
    if((year%4==0 && year%100!=0) ||year%400==0)
        monthday[1]=29;
    else
        monthday[1]=28;
    for(i=0;i<month-1;i++)
    {
        s=s+monthday[i];
    }
    s=s+day-1;
    t=s%7;
    printf("%s",week[t]);
 } 
 
 int main()
 {
    int n;
    int year,month,day,days;
    scanf("%d",&n);
    while(n--)
    {
        scanf("%d-%d-%d %d",&year,&month,&day,&days);
        DAY(year,month,day,days);
        printf("\n");
     }
 }
6、字符串求解前缀
题目描述

给定n组字符串,每组两个字符串,以空格分开。找出这组两个字符串的公共前缀,并输出。

输入

第一行输入组数n,之后的n行,每行输入两个单词,这两个单词以空格分隔。

输出

输出n行,每行为对应组中两个单词的公共前缀,或者【无公共前缀】。

样例输入

2
come component
shanxi beijing

样例输出

com
无公共前缀

提示

待统计的数据个数不超过10对,每个字符串的长度不超过20。

代码源:

#include<stdio.h>
#include<string.h>
int main()
{
    int n;
    scanf("%d",&n);
    char str1[10];
    char str2[10];
    char str[10];
    int i,j,flag,t=0;
    while(n--)
    {
        scanf("%s %s",&str1,&str2);
        int len1=strlen(str1);
        int len2=strlen(str2);
            for(i=0;i<len1;i++)
            {
                if(str1[0]!=str2[0])
                {
                    flag=1;
                    break;
                }
                else if(str1[i]==str2[i])
                {
                    flag=0;
                    t++;
                    str[i]=str1[i];
                }   
                else break;
            }
            if(flag!=0)
            {
                printf("无公共前缀\n");
            }
            else if(flag==0)
            {
                printf("%s\n",str);
            }
    }
}
7、在指定位置增加图书信息
题目描述

一本图书的信息有: 编号、书名、作者、出版社、出版日期、价格。设计一个结构体类型描述图书信息,并实现输入多本(不超过20本)图书信息,存储在该结构体的数组变量中。在增加加一本图书到指定位置并输出增加后的结果。

输入

第一行输入图书的本数n。
以后的n行,每行输入一本图书的信息;每本图书信息的输入说明如下:输入时,各个信息之间空格间隔;编号为整数;书名、作者、出版社均为长度不超过30的字符串;出版日期的输入格式为yyyy-mm-dd,例如(2017-5-2);价格为实数。
第n+2行输入一个整数m,表示增加的图书将成为第m本图书。
第n+3行输入待增加图书的各项信息,格式同上。

输出

以列表方式输出增加后的结果:(注意,输出中除了汉字外,其他符号均为英文符号)
第一行输出标题行,分别输出:“编号”、“书名”、“作者”、“出版社”、“出版日期”、“价格”;相邻两项之间以一个空格间隔。(参见样例)
以后每行输出一本书,依次输出<编号>,<书名>,<作者>,<出版社>,<出版日期>,<价格(小数点后保留2位)>,相邻两项之间以一个空格间隔。(参见样例)

样例输入

3
2 数据结构 耿国华 高等教育出版社 2005-7-1 28.00
4 大学英语 LEE 清华出版社 1990-4-1 34.6
7 车来了 噼里啪啦 二十一世纪出版社 2008-9-9 18.50
3
1 高等数学 张三 高等教育出版社 1994-5-1 18.50

样例输出

编号 书名 作者 出版社 出版日期 价格
2 数据结构 耿国华 高等教育出版社 2005年7月1日 28.00
4 大学英语 LEE 清华出版社 1990年4月1日 34.60
1 高等数学 张三 高等教育出版社 1994年5月1日 18.50
7 车来了 噼里啪啦 二十一世纪出版社 2008年9月9日 18.50

这道题同第3题有些类似,但因为这道题增加了插入操作,所以我觉得可能用链表写会简单一点,但是我实在是链表不精通,所以这个题我依然用的是结构体数组的插入方法完成的,等后面如果我用链表完成了再来更新。

代码源:

#include<stdio.h>
struct BOOK
{
    int num;
    char name[30];
    char editor[30];
    char pub[60];
    int year;
    int month;
    int day;
    float price;
};
int main()
{
    int n,m;
    scanf("%d",&n);
    struct BOOK book[10];
    struct BOOK t[10];
    int i,j;
    for(i=0;i<n;i++)
    {
        scanf("%d",&book[i].num);
        scanf("%s",book[i].name);
        scanf("%s",book[i].editor);
        scanf("%s",book[i].pub);
        scanf("%d-%d-%d",&book[i].year,&book[i].month,&book[i].day);
        scanf("%f",&book[i].price);
    }
    scanf("%d",&m);
    n=n+1;
    scanf("%d",&t[m-1].num);
    scanf("%s",t[m-1].name);
    scanf("%s",t[m-1].editor);
    scanf("%s",t[m-1].pub);
    scanf("%d-%d-%d",&t[m-1].year,&t[m-1].month,&t[m-1].day);
    scanf("%f",&t[m-1].price);
    for(i=0;i<n;i++)
    {
        if(i<m-1)
        {
            t[i]=book[i];
        }
        else if(i>m-1)
        {
            t[i]=book[i-1];
        }
    }
    printf("编号 书名 作者 出版社 出版日期 价格\n");
    for(j=0;j<n;j++)
    {
        printf("%d ",t[j].num);
        printf("%s ",t[j].name);
        printf("%s ",t[j].editor);
        printf("%s ",t[j].pub);
        printf("%d年%d月%d日 ",t[j].year,t[j].month,t[j].day);
        printf("%0.2f\n",t[j].price);
    }
}
8、 黑色星期五
题目描述

有些西方人比较迷信,如果某个月的13号正好是星期五,他们就会觉得不太吉利,用古人的说法,就是“诸事不宜”。请你编写一个程序,统计出在某个特定的年份中,出现了多少次既是13号又是星期五的情形,以帮助你的迷信朋友解决难题。
说明:
(1)一年有365天,闰年有366天,所谓闰年,即能被4整除且不能被100整除的年份,或是既能被100整除也能被400整除的年份;
(2)已知1998年1月1日是星期四,用户输入的年份肯定大于或等于1998年。

输入

输入只有一行,即某个特定的年份(大于或等于1998年)。

输出

输出只有一行,即在这一年中,出现了多少次既是13号又是星期五的情形,格式为【****年有*个黑色星期五】。

样例输入

1998

样例输出

1998年有3个黑色星期五

该题思想同第五题

代码源:

#include<stdio.h>
int DAY(int year)
{
//  char week[7][20]={"星期四","星期五","星期六","星期日","星期一","星期二","星期三"}; 
    int monthday[12]={31,28,31,30,31,30,31,31,30,31,30,31}; 
    int i,j,t=0,s=0;
    if((year%4==0 && year%100!=0) ||year%400==0)
    {
        monthday[1]=29;
    }
    else
        monthday[1]=28;
    for(i=1998;i<year;i++)
    {
        if((i%4==0 && i%100!=0) ||i%400==0)
        {
            s=s+366;
        }
        else
            s=s+365;
    }
    for(i=0;i<12;i++)
    {
        if(i==0)
        {
            j=(s+13)%7-1;
        }
        else
        {   s=s+monthday[i-1];
            j=(s+13)%7-1;
        }
        if(j==1)
        {
            t++;
        }   
    }
    return t;
} 
int main()
{
    int year;
    scanf("%d",&year);
    int t;
    t=DAY(year);
    printf("%d年有%d个黑色星期五",year,t);
}
9.生日蜡烛
题目描述

某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的 蜡烛。现在算起来,他一共吹熄了N根蜡烛。请问,他从多少岁开始办生日party的,现在他多少岁?
例如:若N=236,因为236=26+27+28+29+30+31+32+33,所以,他从26岁开始办生日party,他现在33岁。

输入

输入一共吹熄的蜡烛数N。

输出

输出他办生日party的起止年龄数,以空格隔开;若有多种情况,输出起始年龄最小的一种情况。

样例输入

236

样例输出

26 33

代码源:

#include<stdio.h>
int main()
{
    int i=1,j,sum=0;
    int n;
    scanf("%d",&n);
    while(sum!=n)
    {
        for(j=i;;j++)
        {
            sum=sum+j;
            if(sum==n)
            {
                printf("%d %d",i,j);
                break;
            }
            else if(sum>n)
            {
                sum=0;
                break;
            }
         } 
        i++;
    }
 } 
10、.特大整数的精确相加和相减
题目描述

特大整数用长整型也存不下,如果用双精度实型存储则会造成误差,可以用字符数组存储所有位,再按十进制由低到高逐位相加,同时考虑进位。

特别提示:

假设特大整数不超过30位。参与操作的数据中,被减数>减数。

算法分析:

1.初始化:将两个特大整数输入两个字符数组,将两个字符数组的各元素右移,使最低位的元素位置对齐,高位补0,为了存储最高位的进位,位数多的数最高位前也应补一个0。
2.从最低位对应的数组元素开始将数字字符转换为整型数据相加,因为数字字符‘0’对应的ASCII值是48,则:整型数据1+2,相当于 ('1'-48)+('2'-48),即'1'+'2'-96。
3.将和整除以10,余数就是该位的结果,并转换为字符(整型数据+48)存入该位,商就是进位数。
4.再对高一位对应的数组元素操作,将该位数字字符转换为整型相加,并与低位的进位数相加,将和整除以10,余数就是该位的结果,商就是本位的进位数。
5.重复4直到最高位。如果最高位相加时进位数大于0则将此进位数转换为字符存入最高位。

输入

第一行待运算的表达式个数n,之后连续的2n行每相邻得两行为一组。

输出

依次输出运算结果,共输出2n行。前n行为相加的运算结果;后n行为相减的运算结果,每个结果独占一行。

样例输入

3
123456789
23456789
999999999
999999999
1000000000
9999

样例输出

146913578
1999999998
1000009999
100000000
0
999990001

代码源:

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
 
void swap(char target[]) {
    int i;
    int j;
    char temp;
 
    for(i = 0,j = strlen(target) - 1;i <= j;i++,j--) {
        temp = target[i];
        target[i] = target[j];
        target[j] = temp;
    }
}
 
void BigNumAdd(char a[],char b[]) {
    int i;
    char c[1001] = {0};
 
    swap(a);
    swap(b);
 
    for(i = 0;i < strlen(a) && i < strlen(b);i++) {
        c[i] += a[i] + b[i] - '0';
        if(c[i] - '0' >= 10){
            c[i] = c[i] - 10;
            c[i+1] = 1;
        }
    }
    
    if(strlen(a) == strlen(b)) {
        if(c[i] == 1) 
            c[i]='1';
    }
    
    if(strlen(a) > strlen(b)){
        if(c[i] == 1) {
            for(;i < strlen(a);i++){
                c[i] += a[i];
                if(c[i] - '0' >= 10) {
                    c[i] = c[i] - 10;
                    c[i+1] = 1;
                }
            }   
 
            if(c[i-1] == '0')
                c[i] = '1';
        }
        else { 
            for(;i < strlen(a);i++)
                c[i] = a[i];
        }
    }
 
    if(strlen(b) > strlen(a)){
        if(c[i]==1){
            for(;i < strlen(b);i++){
                c[i] += b[i];
                if(c[i] - '0' >= 10){
                    c[i] = c[i] - 10;
                    c[i+1] = 1;
                }
            }
            if(c[i] == 1)
                c[i] = '1';
        } else { 
            for(;i < strlen(b);i++)
                c[i] = b[i];
        }
    }
    swap(c);
 
    printf("%s\n",c);
}
 
void BigNumChange(char *str1, char *str2) {
    int len1 = strlen(str1);  
    int len2 = strlen(str2);  
    int i;  
    int *num1 = (int*)malloc(len1*sizeof(int));  
    int *num2 = (int*)malloc(len1*sizeof(int));  
 
    if(str1 == NULL || str2 == NULL) 
        return;  
    
    for (i = 0; i < len1; i++)  
    {  
        num1[i] = num2[i] = 0;  
    }  
    for (i = len1 - 1; i >= 0; i--)  
    {  
        num1[len1 - 1 - i] = str1[i] - '0';  
    }  
    for (i = len2 - 1; i >= 0; i--)  
    {  
        num2[len2-1-i] = str2[i] - '0';  
    }  
    for (i = 0; i < len1; i++)  
    {  
        num1[i] = num1[i] - num2[i];  
        if(num1[i] < 0)  
        {  
            num1[i] = num1[i] + 10;  
            num1[i+1] = num1[i+1] - 1;  
        }  
    }  
    for (i = len1-1; i>=0 && num1[i] == 0; i--)  
        ;  
    if(i >= 0)  
        for (; i >= 0; i--)  
        {  
            printf("%d",num1[i]);  
        }  
    else  
        printf("0");  
 
}  
 
int main(void) {
    int n;
    char a[100][100];
    int i;
    int len1;
    int len2;
 
    scanf("%d",&n);
    for(i = 0;i < 2*n;i++) {
        scanf("%s",a[i]);
    }
    
    for(i = 0;i < 2*n;i += 2) {
        BigNumAdd(a[i],a[i+1]);
    }
 
    for(i = 0;i < 2*n;i++) {
        swap(a[i]);
    }
 
    for(i = 0;i < 2*n;i += 2) {
        len1 = strlen(a[i]);
        len2 = strlen(a[i+1]);
        if(len1 > len2) {
            BigNumChange(a[i],a[i+1]);
        } else if(len1 < len2) {
            printf("-");
            BigNumChange(a[i+1],a[i]);
        } else {
            if(strcmp(a[i],a[i+1]) >= 0) {
                BigNumChange(a[i],a[i+1]);
            } else {
                printf("-");
                BigNumChange(a[i+1],a[i]);
            }
        }
        printf("\n");
    }
    return 0;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,527评论 5 470
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,314评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,535评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,006评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,961评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,220评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,664评论 3 392
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,351评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,481评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,397评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,443评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,123评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,713评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,801评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,010评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,494评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,075评论 2 341

推荐阅读更多精彩内容