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) 算法: 单调队列 算法思 ...
随机推荐
- 【TOJ 1545】Hurdles of 110m(动态规划)
描述 In the year 2008, the 29th Olympic Games will be held in Beijing. This will signify the prosperit ...
- 洛谷P3871 [TJOI2010]中位数(splay)
题目描述 给定一个由N个元素组成的整数序列,现在有两种操作: 1 add a 在该序列的最后添加一个整数a,组成长度为N + 1的整数序列 2 mid 输出当前序列的中位数 中位数是指将一个序列按照从 ...
- redis主从同步收到以下参数影响
repl-ping-slave-period主从心跳ping的时间间隔.默认10 repl-timeout 从节点超时时间.默认60 repl-backlog-size 主节点保存操作日志的大 ...
- CacheCloud+Redis Cluster 3部署
CacheCloud环境需求 Java 7 Maven 3 MySQL Redis 3 具体用法可参考:https://cachecloud.github.io 1.下载CacheCloud 官网ht ...
- python核心编程2 第十二章 练习
12–5. 使用 __import__().(a) 使用 __import__ 把一个模块导入到你的名称空间. 你最后使用了什么样的语法? (b) 和上边相同, 使用 __import__() 从指定 ...
- 用 jQuery 实现表单验证(转载)
jQuery 官方 API 地址: http://api.jquery.com/ 在线引用 jQuery:http://code.jquery.com/ ——选自<锋利的jQuery>(第 ...
- dom技术解析xml (php)
1.xml实例 test.xml <?xml version="1.0" encoding="utf-8"?><!DOCTYPE 班级 SYS ...
- 为何企业钟爱H5响应式网站? html5响应式网站的优势与特点
随着移动互联网时代的到来,H5响应式网站应运而生,并成功获得了商家.访客.搜索引擎等的青睐!越来越多的企业也选择了H5响应式建站,可为何企业钟爱H5响应式网站呢?难道传统网站不好吗?这个不能妄下结论, ...
- QP之QEP原理
1.QP简介: 量子平台(Quantum Platform, 简称QP)是一个用于实时嵌入式系统的软件框架,QP是轻量级的.开源的.基于层次式状态机的.事件驱动的平台. QP包括事件处理器(QEP). ...
- aioysql(异步操作MySQL)-python
python异步IO初探 探索异步IO执之前,先说说IO的种类 阻塞IO最简单,即读写数据时,需要等待操作完成,才能继续执行.进阶的做法就是用多线程来处理需要IO的部分,缺点是开销会有些大. 非阻塞I ...