zufe 蓝桥选拔
https://zufeoj.com/contest.php?cid=1483
问题 A: A
代码:
#include <bits/stdc++.h>
using namespace std; const int maxn = 1e5 + ;
int n;
int num[maxn];
map<int, int> mp; int main() {
scanf("%d", &n);
for(int i = ; i < n; i ++) {
scanf("%d", &num[i]);
mp[num[i]] ++;
} sort(num, num + n);
int maxx = num[n - ];
for(int i = ; i <= maxx; i ++)
printf("%d\n", mp[i]);
return ;
}
问题 B: 平方数(sevensqr)
代码:
#include <bits/stdc++.h>
using namespace std; bool is(int x) {
vector<int> num;
int t = x;
while(t) {
num.push_back(t % );
t /= ;
} map<int, int> mp;
for(int i = ; i < num.size(); i ++) {
mp[num[i]] ++;
if(mp[num[i]] > ) return false;
}
return true;
} int main() {
vector<int> ans;
for(int i = ; i < ; i ++) {
if((int)sqrt(i) == sqrt(i) && is(i))
ans.push_back(i);
} int cnt = ;
for(int i = ; i < ans.size(); i ++) {
cnt ++;
printf("%d ", ans[i]);
printf("%s", (cnt % == ) ? "\n" : "");
} return ;
}
问题 C: 打印图形
代码:
#include <bits/stdc++.h>
using namespace std; int T;
char mp[][]; int main() {
scanf("%d", &T);
while(T --) {
int n;
scanf("%d", &n);
for(int i = ; i <= n; i ++) {
for(int j = ; j <= n; j ++) {
if(i == j) mp[i][j] = '*';
else if(i == || i == n)
mp[i][j] = '*';
else if(j == || j == n)
mp[i][j] = '*';
else mp[i][j] = '.';
}
} for(int i = ; i <= n; i ++) {
for(int j = ; j <= n; j ++)
printf("%c", mp[i][j]);
printf("\n");
}
}
return ;
}
问题 D: 借书
代码:
#include <bits/stdc++.h>
using namespace std; int T;
int n, m, w;
int book[]; int main() {
scanf("%d", &T);
while(T --) {
scanf("%d", &n);
for(int i = ; i <= n; i ++)
scanf("%d", &book[i]);
scanf("%d", &m);
while(m --) {
int x;
scanf("%d", &x);
if(x > ) book[x] --;
else book[abs(x)] ++;
}
scanf("%d", &w);
if(book[w] > )
printf("yes\n");
else printf("no\n");
}
return ;
}
问题 E: 九宫
代码:
#include <bits/stdc++.h>
using namespace std; int T;
int maze[][]; int main() {
scanf("%d", &T);
for(int y = ; y <= T; y ++) {
memset(maze, , sizeof(maze));
for(int i = ; i < ; i ++)
for(int j = ; j < ; j ++)
scanf("%d", &maze[i][j]); map<int, int> mp;
bool flag = true;
for(int i = ; i < ; i ++) {
for(int j = ; j < ; j ++) {
mp[maze[i][j]] ++;
if(mp[maze[i][j]] > ) {
flag = false;
//printf("Wrong\n");
break;
}
}
mp.clear();
} for(int i = ; i < ; i ++) {
for(int j = ; j < ; j ++) {
mp[maze[j][i]] ++;
if(mp[maze[j][i]] > ) {
flag = false;
//printf("Wrong\n");
break;
}
}
mp.clear();
} for(int i = ; i < ; i += ) {
for(int j = ; j < ; j += ) {
for(int s = i; s < i + ; s ++) {
for(int t = j; t < j + ; t ++) {
mp[maze[s][t]] ++;
if(mp[maze[s][t]] > ) {
flag = false;
//printf("Wrong\n");
break;
}
}
}
mp.clear();
}
}
if(flag) printf("Right\n");
else printf("Wrong\n");
}
return ;
}
问题 F: 捡石头
代码:
#include <bits/stdc++.h>
using namespace std; int T; int main() {
scanf("%d", &T);
while(T --) {
int n;
scanf("%d", &n);
int win = ;
if(n % == )
win = ; if(win) printf("金\n");
else printf("勇\n");
}
return ;
}
问题 G: 竞赛真理
代码:
#include <bits/stdc++.h>
using namespace std; int n, t;
int w1[], w2[], t1[], t2[];
int dp[][]; int main() {
scanf("%d%d", &n, &t);
for(int i = ; i < n; i ++)
scanf("%d%d%d%d", &w1[i], &t1[i], &w2[i], &t2[i]); for(int i = n - ; i >= ; i --) {
for(int j = ; j <= t; j ++) {
if(j < t1[i] && j < t2[i])
dp[i][j] = dp[i + ][j];
else if(j < t1[i] && j >= t2[i])
dp[i][j] = max(dp[i + ][j], dp[i + ][j - t2[i]] + w2[i]);
else if(j >= t1[i] && j < t2[i])
dp[i][j] = max(dp[i + ][j], dp[i + ][j - t1[i]] + w1[i]);
else
dp[i][j] = max(dp[i + ][j], max(dp[i + ][j - t1[i]] + w1[i], dp[i + ][j - t2[i]] + w2[i]));
}
} int ans = dp[][t];
printf("%d\n", ans);
return ;
}
问题 H: 吃西瓜
代码:
#include <stdio.h>
#include <string.h>
#define max(a, b) (a)>(b)?(a):(b)
#define INF 0x3f3f3f3f3f3f3f
const int N = ; int t, A, B, C;
long long g[][][], sum[][][][], res[][][][]; void init() {
scanf("%d%d%d", &A, &B, &C);
for (int i = ; i <= A; i++)
for (int j = ; j <= B; j++)
for (int k = ; k <= C; k++)
scanf("%lld", &g[i][j][k]);
} long long solve() {
long long ans = -INF;
for (int c = ; c <= A; c++) {
for (int i = ; i <= B; i++) {
for (int j = i; j <= B; j++) {
for (int k = ; k <= C; k++) {
long long h = ;
for (int l = k; l <= C; l++) {
h += g[c][j][l];
sum[i][j][k][l] = sum[i][j - ][k][l] + h;
if (c == ) res[i][j][k][l] = sum[i][j][k][l];
else res[i][j][k][l] = max(sum[i][j][k][l], res[i][j][k][l] + sum[i][j][k][l]);
ans = max(ans, res[i][j][k][l]);
}
}
}
}
}
return ans;
} int main() {
//scanf("%d", &t);
//while (t--) {
init();
printf("%lld\n", solve());
if (t) printf("\n");
//}
return ;
}
附加:二维数组的最大子矩阵和
代码:
#include <bits/stdc++.h>
using namespace std; int n, m; int MaxSum(vector<vector<int> >& a) {
int cur = ;
int maxx = INT_MIN;
for(int i = ; i < a.size(); i ++) {
vector<int> s(a[].size());
for(int j = i; j < a.size(); j ++) {
cur = ;
for(int k = ; k < s.size(); k ++) {
s[k] += a[j][k];
cur += s[k];
maxx = max(maxx, cur);
cur = max(cur, );
}
}
} return maxx;
} int main() {
scanf("%d%d", &n, &m);
vector<vector<int> > v(n, vector<int>(m));
for(int i = ; i < n; i ++) {
for(int j = ; j < m; j ++)
scanf("%d", &v[i][j]);
} int ans = MaxSum(v);
printf("%d\n", ans);
return ;
}
第一次参加的比赛 超级紧脏 还是要好好学呢
zufe 蓝桥选拔的更多相关文章
- 第五届蓝桥杯校内选拔第七题_(树型dp)
G将军有一支训练有素的军队,这个军队除开G将军外,每名士兵都有一个直接上级(可能是其他士兵,也可能是G将军).现在G将军将接受一个特别的任务,需要派遣一部分士兵(至少一个)组成一个敢死队,为了增加敢死 ...
- 第五届蓝桥杯校内选拔第六题_(dfs)
你一定听说过“数独”游戏.如[图1.png],玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行.每一列.每一个同色九宫内的数字均含1-9,不重复. 数独的答案都是唯一的,所以 ...
- C语言蓝桥杯比赛原题和解析
蓝桥杯:在计算机编程领域,是具有一定含金量的竞赛,用于选拔信息技术人才. 一般分为多个领域,其中包含了C/C#/C++/Java/Python等编程语言的测试题,多为算法的设计题. 下面,在搜题过程中 ...
- 蓝桥杯算法提高 P1001(大数乘法)
算法提高 P1001 时间限制:1.0s 内存限制:256.0MB 当两个比较大的整数相乘时,可能会出现数据溢出的情形.为避免溢出,可以采用字符串的方法来实现两个大数之间的乘法. 具体 ...
- FZU 1894 志愿者选拔(单调队列)
传送门 Description 世博会马上就要开幕了,福州大学组织了一次志愿者选拔活动.参加志愿者选拔的同学们排队接受面试官们的面试.参加面试的同学们按照先来先面试并且先结束的原则接受面试官们的考查. ...
- java面试宝典(蓝桥学院)
Java面试宝典(蓝桥学院) 回答技巧 这套面试题主要目的是帮助那些还没有java软件开发实际工作经验,而正在努力寻找java软件开发工作的学生在笔试/面试时更好地赢得好的结果.由于这套试题涉及的范围 ...
- [总结]HNOI2015省队选拔
// 此博文为迁移而来,写于2015年4月21日,不代表本人现在的观点与看法.原始地址:http://blog.sina.com.cn/s/blog_6022c4720102vy9t.html 这次省 ...
- 2015年第六届蓝桥杯C/C++程序设计本科B组决赛
1.积分之谜(枚举) 2.完美正方形 3.关联账户(并查集) 4.密文搜索 5.居民集会 6.模型染色 1.积分之迷 小明开了个网上商店,卖风铃.共有3个品牌:A,B,C.为了促销,每件商品都会返固定 ...
- FZU 1894 志愿者选拔 (单调队列)
/****************************************************************** 题目: 志愿者选拔(FZU 1894) 算法: 单调队列 算法思 ...
随机推荐
- fabricjs 的用途
使用html5 的canvas画板做一些图片旋转,拖动,放大,缩小和合成图片的功能,有没有一个集成好的组件库呢?答案肯定是有的,而且还不止我前面提到的功能,下面介绍一下我使用的fabricjs. 官网 ...
- AOJ 0531 坐标离散化
涂色:(日文题目,自己翻译成了中文)为了宣传信息竞赛,要在长方形的三合板上喷油漆来制作招牌.三合板上不需要涂色的部分预先贴好了护板.被护板隔开的区域要涂上不同的颜色,比如上图就应该涂上5种颜色. 请编 ...
- pip安装拓展包--网络超时/Read timed out问题
pip安装拓展包--网络超时/Read timed out问题 解决方案:切换镜像源(墙皮太厚) 在后面加上: -i https://pypi.douban.com/simple example: p ...
- 清除input框的缓存
html <div class="container"> <form class="parent" autocomplete="of ...
- elasticsearch 5.x 系列之六 文档索引,更新,查询,删除流程
一.elasticsearch index 索引流程 步骤: 客户端向Node1 发送索引文档请求 Node1 根据文档ID(_id字段)计算出该文档应该属于shard0,然后请求路由到Node3的P ...
- 模块的使用与orm简介
目录 1 django中app的概念: 2 模板路径配置: 3 静态文件配置: 4 完整版登录功能 5 get请求和post请求 6 新手三件套总结 7 pycharm连接mysql 8 orm介绍 ...
- go web cookie和session
cookie是存储在浏览器端,session是服务器端 cookie是有时间限制的,分会话cookie和持久cookie,如果不设置时间,那周期就是创建到浏览器关闭为止.这种是会话cookie,一般保 ...
- labview在编写程序框图中遇到的一些布尔按钮控制布尔指示灯问题
上图布尔控件按下,数据0x04成功发送给下位机,布尔灯不亮. ............... ............. ........... 下图布尔控件按下, ...
- dotnet core 项目
项目 常用命令 我们使用dotnet core 命令行来创建项目及进行编译,发布等,比较常用的dotnet core 命令 如下: dotnet new [arguments] [options] 创 ...
- HBase 是什么
Apache HBase™ is the Hadoop database, a distributed, scalable, big data store. HBase 是 Hadoop databa ...