目前先放几道题面,等晚上做完实验补

Update:A ~ D,更新剩余的题面(题面复制会有链接水印,懒得一一去除、直接截图)

A、签到

真·签到题

输出祝贺祖国成立70周年!即可

B、欧涛的烦恼

思路:

简单累加,然后注意取整即可

// Author : RioTian
// Time : 20/11/02
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll _, n;
void solve() {
cin >> n;
int a;
long long sum = 0;
for (int i = 0; i < n; i++) {
cin >> a;
sum += a;
}
cout << (sum + n - 1) / n << endl;
}
int main() {
// freopen("in.txt", "r", stdin);
ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
cin >> _;
while (_--) solve();
}

C、欧涛最短路

思路:

跑一遍迪杰斯特拉最短路就可以的样子,不知道为什么没什么人过

// Author : RioTian
// Time : 20/11/02
#include <bits/stdc++.h>
#define ll long long
#define N 608
using namespace std;
const double INF = 0x4242424242424242;
int vis[N];
int path[N];
double dis[N];
double mp[N][N];
double cord[N][3];
double ans;
void dijkstra(int n) {
for (int i = 0; i < n; ++i) dis[i] = mp[0][i];
dis[0] = 0;
vis[0] = 1;
double mmin = dis[606];
int pos = -1;
for (int i = 0; i < n; ++i) {
mmin = dis[606];
pos = -1;
for (int j = 0; j < n; ++j) {
if (!vis[j] && dis[j] < mmin) {
pos = j;
mmin = dis[j];
}
}
if (pos == -1) break;
vis[pos] = 1;
for (int j = 0; j < n; ++j) {
if (!vis[j] && dis[j] > dis[pos] + mp[pos][j]) {
dis[j] = dis[pos] + mp[pos][j];
path[j] = pos;
}
}
}
ans = dis[n - 1];
}
int main() {
int n;
double m;
while (cin >> n >> m) {
memset(mp, 0x42, sizeof mp);
memset(dis, 0x42, sizeof dis);
memset(path, -1, sizeof path);
memset(vis, 0, sizeof vis);
cin >> cord[0][0] >> cord[0][1] >> cord[0][2];
cin >> cord[n + 1][0] >> cord[n + 1][1] >> cord[n + 1][2];
for (int i = 1; i <= n; ++i)
scanf("%lf %lf %lf", &cord[i][0], &cord[i][1], &cord[i][2]);
for (int i = 0; i <= n + 1; ++i) {
for (int j = i + 1; j <= n + 1; ++j) {
double x =
(1.0 * cord[i][0] - cord[j][0]) * (cord[i][0] - cord[j][0]);
double y =
(1.0 * cord[i][1] - cord[j][1]) * (cord[i][1] - cord[j][1]);
double z =
(1.0 * cord[i][2] - cord[j][2]) * (cord[i][2] - cord[j][2]);
double len = sqrt(x + y + z);
if (len <= m) mp[i][j] = mp[j][i] = len;
}
}
dijkstra(n + 2);
if (ans < dis[606]) {
printf("%.3f\n", ans);
stack<int> st;
while (!st.empty()) st.pop();
for (int i = path[n + 1]; i != -1; i = path[i]) st.push(i);
cout << "Start ";
while (!st.empty()) {
cout << st.top() << " ";
st.pop();
}
cout << "End\n";
} else
cout << -1 << endl;
}
}

D、 甜甜圈

// Author : RioTian
// Time : 20/11/02
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main() {
// freopen("in.txt","r",stdin);
ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
string s;
int n;
cin >> n;
while (n--) {
cin >> s;
int res = 0;
for (int i = 0; i < s.length(); ++i) {
if (s[i] == '0' || s[i] == '4' || s[i] == '6' || s[i] == '9') res++;
else if (s[i] == '8') res += 2;
}
cout << res << endl;
}
}

E、欧涛爬树

F、欧涛B

G、数据结构

H、谁在说谎

// Author : RioTian
// Time : 20/11/08
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 1e5 + 10;
int n, dp[N], v[N];
struct node {
int l, r;
} nd[N], lst_nd[N];
bool cmp(node a, node b) {
if (a.r != b.r) return a.r < b.r;
return a.l < b.l;
}
int main() {
// freopen("in.txt", "r", stdin);
ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
int l, r, tol = 0, tot = 0;
cin >> n;
for (int i = 1; i <= n; ++i) {
cin >> l >> r;
if (l + r >= n) continue;
nd[++tol].l = l + 1;
nd[tol].r = n - r;
}
sort(nd + 1, nd + 1 + tol, cmp);
for (int i = 1; i <= tol; ++i) {
if (nd[i].l != nd[i - 1].l || nd[i].r != nd[i - 1].r)
lst_nd[++tot].l = nd[i].l, lst_nd[tot].r = nd[i].r;
v[tot] = min(v[tot] + 1, nd[i].r - nd[i].l + 1);
}
for (int i = 1, j = 1; i <= n; i++) {
dp[i] = dp[i - 1];
while (j <= tot && lst_nd[j].r == i) {
dp[i] = max(dp[i], dp[lst_nd[j].l - 1] + v[j]);
j++;
}
}
cout << n - dp[n] << endl;
}

I、不要666

J、组合技

K、这个勇者明明超强却过分慎重

玩梗好评

基本递推,打表找规律

const int mod = 666666;
ll n, m;
int main() {
//freopen("in.txt", "r", stdin);
ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
int a = 4, b = 233, ans[100000] = {0}, c = 0;
for (int i = 1; i <= 2523; ++i) {
c = ((a * 3 % mod) + (b * 4 % mod)) % mod;
a = b, b = c;
ans[i] = c;
}
while (cin >> n >> m) {
if (n == 1)
cout << m - 4 << endl;
else if (n == 2)
cout << m - 233 << endl;
else
cout << m - ans[(n - 2) % 2520] << endl;
}
}

华东交通大学2019年ACM 双基 程序设计竞赛 个人题解(A - K)的更多相关文章

  1. 华东交通大学2018年ACM“双基”程序设计竞赛部分题解

    链接:https://ac.nowcoder.com/acm/contest/221/C来源:牛客网 C-公式题(2) 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其 ...

  2. 华东交通大学2018年ACM“双基”程序设计竞赛 C. 公式题 (2) (矩阵快速幂)

    题目链接:公式题 (2) 比赛链接:华东交通大学2018年ACM"双基"程序设计竞赛 题目描述 令f(n)=2f(n-1)+3f(n-2)+n,f(1)=1,f(2)=2 令g(n ...

  3. 华东交通大学2016年ACM“双基”程序设计竞赛 1007

    Problem Description ACM小学妹在今天的暑假训练结束后,想看球赛放松一下.当他打开电脑时查询到联盟今天直播N场球赛,每场球赛的起止时间(S1,E1),(S2,E2),...,(SN ...

  4. 华东交通大学2016年ACM“双基”程序设计竞赛 1001

    Problem Description 输入一个非负的int型整数,是奇数的话输出"ECJTU",是偶数则输出"ACM". Input 多组数据,每组数据输入一 ...

  5. 华东交通大学2016年ACM“双基”程序设计竞赛 1008

    Problem Description halfyarn找你写个简单的题?好哒!给你n个整数,现在要求你选择两个位置的数,例如选择第pos_a个数a,和第pos_b个数b,给定ans=min(a,b) ...

  6. 华东交通大学2016年ACM“双基”程序设计竞赛 1005

    Problem Description 最近侯ry感觉自己在数学方面的造诣不忍直视:他发现他的学习速率呈一个指数函数递增,疯狂的陷入学习的泥潭,无法自拔:他的队友发现了他的学习速率y=e^(b*lna ...

  7. 华东交通大学2016年ACM“双基”程序设计竞赛 1004

    Problem Description LB是个十分喜欢钻研的人,对什么事都要搞明白.有一天他看到一个公式,((a-b)*c+d*e)/f=k.他想如果给定K的值,一共有多少种不同整数的组合(a,b, ...

  8. 华东交通大学2016年ACM“双基”程序设计竞赛 1010

    Problem Description LB是个十分喜欢钻研的人,对什么事都要搞明白.有一天他学习到了阶乘,他十分喜欢,所以他在想一个问题.如果给定一个数n,求n!能不能被2016整除.LB算了好久都 ...

  9. 华东交通大学2016年ACM“双基”程序设计竞赛 1009

    Problem Description 华盛顿在寝室洗衣服,遭到了xyf的嫌弃,于是xyf出了道题给华盛顿来做(然而并没有什么关系-v-!)xyf扔给华盛顿n个字符串,这些字符串的长度不超过10000 ...

  10. 华东交通大学2016年ACM“双基”程序设计竞赛 1003

    Problem Description 风雨漂泊异乡路, 浮萍凄清落叶飞. 游子寻根满愁绪,一朝故土热泪归.Hey ecjtuer! 刚刚学习了二叉树的知识,现在来考察一下..给你一个深度为h的满二叉 ...

随机推荐

  1. vim的各种快捷键

    目录 一.准备一份用于练习的文件 二.命令模式下的快捷键 1.移动光标 2.删除文字 3.复制粘贴 4.撤销上一次操作 5.恢复上一次撤销的操作 6.查找 7.替换单个字符 8.光标移动到最左边 9. ...

  2. java中父类方法return this.对象还是变量,子类去调用this.这个方法的问题

    这个问题很简单 public class this_test01 { public static void main(String[] args) { zi j=new zi(); j.pri(); ...

  3. [ARC105E] Keep Graph Disconnected

    题目链接 好题. 如果 \(1\) 和 \(n\) 一直联通,开始即结束. 如果 \(n\mod 4=1\),那么 \(\frac 12x(x+1)+\frac12(n-x)(n-x+1)\) 为偶数 ...

  4. 使用Visual Studio 2022 创建lib和dll并使用

    对于一个经常写javaWeb的人来说,使用Visual Studio似乎没什么必要,但是对于使用ffi的人来说,使用c或c++编译器,似乎是必不可少的,下面我将讲述如何用Visual Studio 2 ...

  5. Cesium被接入数字孪生系统后会发生怎样的改变?

    众所周知,Cesium凭借其开源免费的特点一直垄断着整个三维GIS的生态系统,但是随着数字孪生技术的发展以及各项新需求的不断涌现,Cesium与数字孪生系统相结合的潜力也逐渐凸显. 一般而言,Cesi ...

  6. Javascript Ajax总结——HTTP头部信息

    每个HTTP请求和响应都会带有相应的头部信息,其中有的对开发人员有用,有的没用.XHR对象也提供了操作这两种头部(即请求头部和响应头部)信息的方法.默认情况下,在发送XHR请求的同时,还会发送下列头部 ...

  7. 漆包线工厂生产管理MES系统解决方案

    ​  漆包线行业老板痛点: 1.漆包线比较传统的行业,一般都是靠人工去管理,老板想及时知道工厂的生产,销售.出入库.库存情况: 2.型号多称重打印易错,没有系统前 :称重打印,出入库,财务脱节,库存和 ...

  8. 交换机SNMP配置

    配置参考v2c为例 1.华为 snmp-agent protocol source-interface vlanif 1 ##S573x以上型号交换机需要snmp-agentsnmp-agent sy ...

  9. GitHub OAuth2的授权指南

    一.OAuth2简介 OAuth 2.0(开放授权 2.0)是一种用于授权的开放标准,旨在允许用户在不提供他们的用户名和密码的情况下,授权第三方应用访问其在另一网站上的信息.它是在网络服务之间安全地共 ...

  10. 华为云API Explorer重磅推出API编排,开发者0代码高效构建工作流

    本文分享自华为云社区<华为云API Explorer重磅推出API编排,开发者0代码高效构建工作流(体验用户招募中)>,作者:华为云PaaS服务小智. 打破传统开发模式,API编排应运而生 ...