【上机】模拟赛题(三)

拉到最下面可以看到题解哦!


A.找画笔

时间:1s 空间:128MB

题目描述

豆豆对数字的执着,让他在理科领域游刃有余,但他近乎疯狂的投入也使父母有些担心,为了让孩子能够全面发展,决定拓宽他的学习领域。正好家旁边有个绘画培训中心就给豆豆报了名,学习绘画的第一天就让豆豆产生了浓厚的兴趣,还主动要求买了很多很多的画笔,画笔有多种颜色,豆豆有一个习惯就是同种颜色的画笔就买两支,一支备用,就这样总共攒了 N 支画笔( N 是偶数且 1 < N < 10^6 )。
可是数字的敏感无孔不入,豆豆脑里蹦出了一个奇怪的问题:如果蒙上眼任意拿走一支画笔,分析剩下的N-1支画笔找出拿走了哪种颜色,你能回答他吗?

输入格式

第一行:一个整数表示剩下的画笔个数就是题目描述中的 N-1
第二行:N-1个用空格隔开的正整数 A_i ( 1 <= A_i < 2^{2^5-1} ),表示剩下的画笔的颜色编号

输出格式

一行一个整数P,表示拿走的画笔的颜色编号

样例数据

【输入】

9
1 1 9 11 5 3 11 5 9

【输出】

3

B.三角形个数

时间:1s 空间:128MB

题目描述

小圆点拉着太阳的胡须,在天空中晃来晃去,好不痛快。
可是,他手一松,“啪”从空中摔了下来,一下子摔到地上,有两条射线被小圆点扯掉下来啦。
“这怎么办呢?”小圆点对躺在地上的两条射线说。
“不要紧,我们请圆规大叔帮忙,让他把两条射线接起来。”这时,大铅笔博士出现了,笑眯眯地指着身后高高个子,戴一顶小黑帽子的圆规说。
圆规大叔弯了弯腰说:“能倒能,不过,连起来就不见得是一条直线了。”
“那是怎么回事呢?”小圆点问。
“我们来试一下就知道了。”圆规大叔边说边拉起了两条射线,把它们连在一起,结果呢?就连成了一个角!
现给出n个角的度数,从中选出度数各不相同的三个角来组成一个三角形,问一共有多少种选法?

输入格式

第一行:一个整数n(3 <= n <= 200000)。
第二行:n个空格隔开的整数ai(0 < ai < 180),表示每个角的度数。

输出格式

只有一个整数,表示能组成度数各不相同的三角形的选法总数。

样例数据

【输入】

5
20 20 30 130 140

【输出】

2

数据规模与约定

30%的数据:n≤20
50%的数据:n≤100
80%的数据:n≤5000
100%的数据:n≤200000


C.宝箱密码

题目描述

海盗王将自己的宝藏藏在了一个宝箱里,只有一次开锁的机会,密码输错宝箱就会永久锁死。
小明意外的得到了这个宝箱,经过详细的研究,他发现海盗王很喜欢数字129,并且在图书馆里找到了海盗王的一段手稿,上面有一段描述:“那些除不完的数,就是我喜欢的”,然后是一大串包含数字的字符串。于是,小明大胆的猜测,从字符串中提炼所有的数字串,所有数字串对129求余,将这些余数加起来,就是宝箱的密码。
编写程序,输入一个字符串,提取里面所有的完整数字串,对129求余,将所有的余数累加起来输出。

输入格式

一行包含多个数字串的字符串(可能有空格)

输出格式

数字串对129求余,余数相加的结果

样例数据

【输入1】

Love me, love my dog, 54321and678

【输出1】

45

【样例1说明】
54321%129=12, 678%129=33, 结果为45。
【输入2】

hello, 00054321 , my phone is 9910。

【输出2】

118

【样例2说明】
54321%129=12,9910%129=106,结果为118
前面的0对结果没有用

数据规模与约定

40%的数据,字符串里的完整数字串长度<=9位
60%的数据,字符串里的完整数字串长度<=19位
100%的数据,字符串里的完整数字串长度<=30位


D.走迷宫

时间:1s 空间:128MB

题目描述

一个迷宫,每次可按上左下右任一方向移动一个格子,每个格子最多经过1次(对同一条路径来说),有些格子被障碍物挡住了不能到达。
请你编程输出从给定起点到终点的最短距离(既路径上经过的格子个数),如果到达不了就输出-1。

输入格式

第一行三个正整数:n m分别表示迷宫的行和列,k表示障碍点个数
第二行四个正整数:起点坐标sx sy和终点坐标fx fy
接下来k行的数据,每行两个数表示障碍物所在的行列坐标

输出格式

一个正整数,表示最短距离
如果没有一条可行的路则输出-1

样例数据

【输入】

5 6 8
1 1 5 6
1 2
1 3
1 5
3 1
3 2
3 6
4 6
5 4

【输出】

9

数据规模与约定

1<=n, m <= 700


建议先自己做再看题解哦!
建议先自己做再看题解哦!
建议先自己做再看题解哦!
建议先自己做再看题解哦!
建议先自己做再看题解哦!
建议先自己做再看题解哦!
建议先自己做再看题解哦!
建议先自己做再看题解哦!
建议先自己做再看题解哦!
建议先自己做再看题解哦!


A.找画笔

【分析】

根据a \; xor \; a=0,0 \; xor \; a=a。所以就是将所有数进行加法运算。

【代码】

#include<bits/stdc++.h>
using namespace std;
const int N=2e5+5,BIG=(1<<31)-1,SMALL=-(1<<31);

int main()
{
    int a,b,c,d,e,f;
    cin>>a>>b;
    for(int i=1; i<a; i++)
    {
        cin>>c;
        b=b^c;
    }
    cout<<b<<endl;
    return 0;
}

B.三角形个数

【代码】

#include<bits/stdc++.h>
using namespace std;
const int N=2e5+5,BIG=(1<<31)-1,SMALL=-(1<<31);
int a[N],n;
long long tong[180],tot;//定义一个桶

int main()
{
    cin>>n;
    for(int i=1; i<=n; i++)
    {
        cin>>a[i];
        tong[a[i]]++;
    }
    for(int i=1; i<=60; i++)
        for(int j=i+1; j<=90; j++)
        {
            int k=180-i-j;
            if(j<k)//判断是否相同
                tot+=tong[i]*tong[j]*tong[k];//乘法原理
        }
    cout<<tot;
    return 0;
}

C.宝箱密码

【代码】

#include<bits/stdc++.h>
using namespace std;
const int N=2e5+5,BIG=(1<<31)-1,SMALL=-(1<<31);

int main()
{
    string s;
    int l,sum=0,n;
    getline(cin,s);//注意整行读入
    s=" "+s+" ";//前后加空格
    l=s.size();//取总长
    for(int i=0; i<l; i++)
    {
        if('0'<=s[i]&&s[i]<='9')//判断是不是数字
        {
            if('0'>s[i-1]||s[i-1]>'9')//新的数字开始
                n=s[i]-'0';
            else
                n=(n*10+s[i]-'0')%129;//每读一位就取余
        }
        else if('0'<=s[i-1]&&s[i-1]<='9')//如果不是数字并且前一个是数字那么这个数字读入完毕
            sum+=n;//累加
    }
    cout<<sum<<endl;
    return 0;
}

D.走迷宫

【分析】

队列queue

【代码】

#include<bits/stdc++.h>
using namespace std;
const int N=7e2+5,he=180,BIG=(1<<31)-1,SMALL=-(1<<31);
bool a[N][N],p[N][N];
//a是原地图,p是判断是否计算过这个点
int n,m;
int dir[4][2]= {{-1,0},{1,0},{0,-1},{0,1}};//四个方向

struct node//队列
{
    int x,y;
    int step;
};
queue < node > b;
void bfs(int x1,int y1,int x2,int y2)
{
    p[x1][y1]=1;
    node nmnm;
    nmnm.step=0,nmnm.x=x1,nmnm.y=y1;
    b.push(nmnm);
    while(!b.empty())
    {
        nmnm=b.front();//取
        b.pop();//弹出
        if(nmnm.x==x2&&nmnm.y==y2)//判断终点
        {
            cout<<nmnm.step<<endl;
            exit(0);//退出程序
        }
        for(int i=0; i<4; i++)
        {
            int nx=nmnm.x+dir[i][0];//目标位置
            int ny=nmnm.y+dir[i][1];
            if(nx>0&&nx<=n&&ny>0&&ny<=m&&p[nx][ny]==0&&a[nx][ny]==0)
            {//越界&&计算过&&能走
                node nmnm1;
                p[nx][ny]=1;
                nmnm1.x=nx;
                nmnm1.y=ny;
                nmnm1.step=nmnm.step+1;
                b.push(nmnm1);//存入
            }
        }
    }
    cout<<-1<<endl;//错误
}
int main()
{
    int c,d,e,f,g,x1,y1;
    cin>>n>>m>>c>>d>>e>>f>>g;
    for(int i=1; i<=c; i++)
    {
        cin>>x1>>y1;
        a[x1][y1]=1;
    }
    bfs(d,e,f,g);
    return 0;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,377评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,390评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,967评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,344评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,441评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,492评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,497评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,274评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,732评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,008评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,184评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,837评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,520评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,156评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,407评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,056评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,074评论 2 352