前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >长沙理工新生赛

长沙理工新生赛

作者头像
AngelNH
发布2020-04-16 11:56:23
8900
发布2020-04-16 11:56:23
举报
文章被收录于专栏:AngelNI

A

链接:

https://ac.nowcoder.com/acm/contest/3530/A

题目描述

众所周知,常守朱是一个优秀的执行官,她凭借自身的卓越能力解决了许多案件,当然她手中的支配者也为办案提供了很大的便利,支配者可以测量一个人的犯罪指数,当超过一定值时,则被认为是罪犯。

支配者的工作原理如下:将一个人的脑电波转化为01串(我瞎编的),01串中1的个数越多,则犯罪指数越高,下面给你一个01串,请你统计该串中1的个数

输入描述:

代码语言:javascript
复制
一个字符串s,字符串的长度小于1e5

输出描述:

代码语言:javascript
复制
一个整数,字符串中1的个数

示例1

输入

代码语言:javascript
复制
0101

输出

代码语言:javascript
复制
2

AC——遍历string

代码语言:javascript
复制
#include<string>
#include<iostream>
#include<cstdlib>
using namespace std;
int n;
int num;
string a;
int main()
{
    cin>>a;
    num = 0;
    for(int i=0;i<a.length();++i)
    {
        if(a[i]=='1')
            num++;
    }
    cout<<num<<endl;
    
    return 0;
}

E

链接:

https://ac.nowcoder.com/acm/contest/3530/E

来源:牛客网

题目描述

众所周知,佳爷是集训队最强,他经常喜欢鄙视集训队最菜的PC,这天他又来了,他丢给PC一道题目:

给你一个字符串,该字符串只包含符号 ‘(’ 和 ‘)’, ,我们称那些左右括号可以一一对应的括号字符串为完美字符串,

比如”()()()”, “((()))”, “((()))()()”, 都是完美字符串

而”((())”, “()(“, “((()))()(“ 不是完美字符串。

这么难的题目,PC当然是不会写的,但他又不想被佳爷鄙视,所以他找到了你,聪明的ACMer啊,请你帮PC解出这题把

输入描述:

代码语言:javascript
复制
第一行一个整数n,代表字符串的长度 n, 1 <= n <= 1e5

第二行一串字符串s,只包含字符 '(' , ')'。

输出描述:

代码语言:javascript
复制
如果该字符串是完美字符串,就输出YES,。否则输出NO

示例1

输入

代码语言:javascript
复制
4
(())

输出

代码语言:javascript
复制
YES

AC——栈的简单应用

代码语言:javascript
复制
#include<iostream>
#include<stack>
#include<cstdlib>
#include<string>
using namespace std;
string a;
int n;
int main()
{
    cin>>n;
    cin>>a;
    stack<char> s1;
    stack<char> s2;
    
    for(int i=0;i<n;++i)
    {
        if(s1.empty())
            s1.push(a[i]);
        else if(a[i]==')'&&s1.top()=='('&&!s1.empty())
        {
            s1.pop();
        }
        else
        {
            s1.push(a[i]);
        }
    }
    if(s1.empty())
        cout<<"YES"<<endl;
    else
    {
        cout<<"NO"<<endl;
    }
    
    system("pause");
    return 0;
}

F

链接:

https://ac.nowcoder.com/acm/contest/3530/F

来源:牛客网

题目描述

——你要是愿意,我就永远存在

某人的朋友圈实在是过于庞大且复杂,要判断两个人是不是朋友,那还真不容易。

现给出某个朋友圈关系图,求任意给出的两个人是否是朋友。

规定:如果x和y是朋友,y和z是朋友,那么x和z也是朋友。

如果x和y是朋友,那么x的朋友都是y的朋友,y的朋友也都是x的朋友。

输入描述:

代码语言:javascript
复制
第一行,三个整数n,m,p,(n ≤ 50000,m ≤ 50000,p≤50000),分别表示有n个人,m个朋友关系,询问p对朋友关系。

以下m行:每行两个数Mi, Mj,1 ≤ Mi, Mj ≤ n,表示Mi和Mj具有朋友关系。

接下来p行:每行两个数Pi ,Pj,询问Pi,Pj是否具有盆友关系

输出描述:

代码语言:javascript
复制
P行,每行一个“Yes”或“No”(不包含引号)。表示第i个询问的答案为“具有”或“不具有”朋友关系。

示例1

输入

代码语言:javascript
复制
6 5 3
1 2
1 5
3 4
5 2
1 3
1 4
2 3
5 6

输出

代码语言:javascript
复制
Yes
Yes
No

AC ——赤果果的并查集

代码语言:javascript
复制
#include<iostream>
#include<string>
#include<cstdlib>
using namespace std;
int pre[500001];
int n,m,p;
int find(int x)
{
    if(pre[x]==x)
    {
        return x;
    }
    else
    {
        return pre[x] = find(pre[x]);
    }
    
}
void join(int x,int y)
{
    int fx = find(x);
    int fy = find(y);
    if(x!=fy)
    {
        pre[fx] = fy;
    }
}
int main()
{
    cin>>n;
    cin>>m;
    cin>>p;

    for(int i =1;i<=n;++i)
    {
        pre[i] = i;
    }
    for(int i =1;i<=m;++i)
    {
        int x,y;
        cin>>x>>y;
        join(x,y);
    }
    for(int i =1;i<=p;++i)
    {
        int x,y;
        cin>>x>>y; 
        int dx = find(x);
        int dy = find(y);
        if(dy==dx)
            cout<<"Yes"<<endl;
        if(dy!=dx)
            cout<<"No"<<endl;
    }
    system("pause");
    return 0;
}

C

链接:

https://ac.nowcoder.com/acm/contest/3530/C

来源:牛客网

题目描述

咚咚咚!在安静的7教417夜晚,车神带来了一堆神秘的数字。

而417的小伙伴都只钟爱于包含4和7的数字。

例如数字:747,4,7747,4,7是他们钟爱的数字,而476,5,27476,5,27不是。

车神灵机一动,突然问:对于给定的数字n,能否找出各个数位上数字和为n的最小钟爱数字。

如果找到则输出这个最小数, 如果找不到,则输出“YingYingYing”。

输入描述:

代码语言:javascript
复制
一行,一个整数n(1 ≤ n ≤ 1e6) 代表要求车牌号的各个数位上数字的和

输出描述:

代码语言:javascript
复制
输出仅一行,为满足条件的最小车牌号,如果不存在这个车牌号就输出“YingYingYing”。

示例1

输入

代码语言:javascript
复制
11

输出

代码语言:javascript
复制
47

示例2

输入

代码语言:javascript
复制
10

输出

代码语言:javascript
复制
YingYingYing

AC——思维

代码语言:javascript
复制
#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n;
	cin>>n;
	int a,b;
	for(a=0;a*4<=n;++a)
	{
		for(b=0;a*4+b*7<=n;++b)
		{
			if(a*4+b*7==n)
				break;
		}
		if(a*4+b*7==n)
			break;
	}
	if(a*4+b*7!=n)
		cout<<"YingYingYing"<<endl;
	else
	{
		for(int i=0;i<a;++i)
		{
			cout<<4;
		}
		for(int i=0;i<b;++i)
		{
			cout<<7;
		}
	}
    system("pause");
	return 0;
}

B

链接:

https://ac.nowcoder.com/acm/contest/3530/B

来源:牛客网

题目描述

给你n个人,每一个人最多可以选k张牌,这n个人都喜欢数s,一张牌有一个数,如果这个数是s,则这个牌称为happy card

每一个人拿到不同数量的happy card 可以获得不同数量的欢乐值。

假如一个人拿到了 i 张happy card ,则可以获得 hi 的欢乐值( hi 数组单调递增), 没有happy card的人的欢乐值为0.

如果没有拿到happy card,则获得的欢乐值为0。

现在你需要把着n张牌分配给这n个人(每个人的牌数都可以为0),使这n个人的快乐值总和最大

输入描述:

代码语言:javascript
复制
第一行三个数字n,k,s, 1 <= n <= 500, 1<= k <= n , 1 <= s <= 1e9接下来n个数代表n张牌上的数ai, 1 <= ai <= 1e9接下来k个数代表hi的值,1 <= hi <= 1e9保证 hi-1 <= hi

输出描述:

代码语言:javascript
复制
最大的快乐值和

示例1

输入

代码语言:javascript
复制
5 3 2
2 2 2 2 2
2 6 7

输出

代码语言:javascript
复制
14

示例2

输入

代码语言:javascript
复制
4 3 9
9 9 9 9 
1 2 3

输出

代码语言:javascript
复制
4

AC——DP/01背包?

代码语言:javascript
复制
#include <bits/stdc++.h>

#define ll long long
using namespace std;
int n,k,s;
int h[1000];
ll f[1000];
int main() {
    
    cin>>n>>k>>s;
    int sum=0;
    for(int i=1,x;i=<n;i++) 
    {
        cin>>x
        if(x==s) 
            sum++;
    }
    for(int i=1;i<=k;i++)
        cin>>h[i];
    for(int i=1;i<=k;i++) 
    {
        for(int j=i;j<=sum;j++) 
        {
            f[j]=max(f[j],f[j-i]+h[i]);
        }
    }
    printf("%lld\n",f[sum]);
    system("pause");
    return 0;
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-12-15|,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目描述
  • 输入描述:
  • 输出描述:
  • 输入
  • 输出
  • AC——遍历string
  • E
    • 题目描述
      • 输入描述:
        • 输出描述:
          • 输入
            • 输出
              • AC——栈的简单应用
              • F
                • 题目描述
                  • 输入描述:
                    • 输出描述:
                      • 输入
                        • 输出
                          • AC ——赤果果的并查集
                          • C
                            • 题目描述
                              • 输入描述:
                                • 输出描述:
                                  • 输入
                                    • 输出
                                      • 输入
                                        • 输出
                                          • AC——思维
                                          • B
                                            • 题目描述
                                              • 输入描述:
                                                • 输出描述:
                                                  • 输入
                                                    • 输出
                                                      • 输入
                                                        • 输出
                                                          • AC——DP/01背包?
                                                          领券
                                                          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档