Summer training round2 #8(Training26)
A:贪心DFS
先从最远的搜起 如果一个点的value>=2 就ans++
D:并查集
E:大模拟
F:快速幂
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
typedef pair<LL, LL > pLL;
const LL MOD1 = 1e9 + , MOD2 = 1e9 + ;
int n, a[], vis[], i, j, k;
set<pLL> st;
LL QuickPow(LL a, LL b, LL MOD) {
LL res = ;
while(b) {
if(b & ) res = (res + a) % MOD;
a = (a * a) % MOD;
b >>= ;
}
return res;
}
int main() {
freopen("numbereater.in", "r", stdin);
freopen("numbereater.out", "w", stdout);
scanf("%d", &n);
for(i = ; i <= n; i++) {
scanf("%d", &a[i]);
}
LL sum1, sum2;
for(i = ; i <= n; i++) {
memset(vis, , sizeof(vis));
sum1 = ; sum2 = ;
for(j = i; j <= n; j++) {
if(!vis[a[j]]) {
sum1 = (sum1 + QuickPow(a[j], a[j], MOD1)) % MOD1;
sum2 = (sum2 + QuickPow(a[j], a[j], MOD2)) % MOD2;
vis[a[j]] = ;
st.insert(make_pair(sum1, sum2));
}
}
}
printf("%d\n", st.size());
return ;
}
K:暴力
#include<stdio.h>
#include<math.h>
#include<string.h>
#include<iostream>
#include<algorithm>
#define INF 2139062143
#define inf -2139062144
#define ll long long
using namespace std;
int a[];
int n;
bool over() {
for(int i=; i<n; i++) {
if(a[i] != ) return false;
}
return true;
}
int main() {
int i,j,k; freopen("table.in", "r", stdin);
freopen("table.out", "w", stdout);
// for(n=299; n<=299; n+=2) {
scanf("%d",&n);
if(n % == ) {
printf("IMPOSSIBLE\n");
return ;
}
memset(a,,sizeof a);
a[] = n;
int cnt = ;
while(!over()) { int ma = inf;
int b[];
for(i=; i<n; i++) {
ma = max(a[i],ma);
b[i] = a[i];
}
for(i=; i<n; i++) {
if(a[i] == ma) {
b[i] -= ;
b[(i-+n)%n] ++;
b[(i++n)%n] ++;
if(cnt == ) {
cnt = ;
} else {
printf(" ");
}
printf("%d",i + );
}
}
for(i=; i<n; i++) a[i] = b[i];
}
printf("\n");
// } return ;
}
Summer training round2 #8(Training26)的更多相关文章
- Summer training round2 #3
A!: GTY系列题 B!:莫队加分块 GTY系列题 C!:线段树模拟拓扑排序(把普通的拓扑排序的栈操作改成线段树区间减一,查询区间最右侧的0的位置即可.注意一 ...
- Summer training round2 #1
A:水 B:求两个三角形之间的位置关系:相交 相离 内含 ①用三个点是否在三角形内外判断 计算MA*MB.MB*MC.MC*MA的大小 若这三个值同号,那么在三角形的内部,异号在外部 #incl ...
- Summer training round2 #9(Training28)
A:签到题 C:模拟搜索题 #include <bits/stdc++.h> #include <cstring> #include <iostream> #inc ...
- Summer training round2 #10(Training 30)
A:签到题 B!:搜索+DP #include<bits/stdc++.h> #define mp make_pair #define pi pair<int,int> usi ...
- Summer training round2 #7 (Training #23)
A:约瑟夫环 套公式 B:线性筛素数 C:投骰子 概率DP F:有权无向图的生成树(边最大值和最小值只差最小) 直接kruskal G:状压BFS或者双向BFS H:模拟题 I:几何题 J:高斯消元
- Summer training round2 #6 (Training #22)
A:二分答案 如果中位数比目前的大就right=mid-1 else left=mid+1 C!:几何 G:优先队列贪心 #include <bits/stdc++.h> using na ...
- Summer training round2 #5 (Training #21)
A:正着DFS一次处理出每个节点有多少个优先级比他低的(包括自己)作为值v[i] 求A B 再反着DFS求优先级比自己高的求C #include <bits/stdc++.h> #incl ...
- Summer training round2 #4 (Training #20)
A!:UESTC1752 B!:找区间内L到R之间内的数的个数 权值分块加莫队 C!:给你一个哈斯图 去掉其中的几条边 要求输出字典序最大的拓扑排序:线段树模拟拓扑排序 D!:要求你找到最短路树并输 ...
- hdu 4946 2014 Multi-University Training Contest 8
Area of Mushroom Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) ...
随机推荐
- k8s1.11.0安装、一个master、一个node、查看node名称是ip、node是扩容进来的、带cadvisor监控服务
一个master.一个node.查看node节点是ip # 安装顺序:先在test1 上安装完必要组件后,就开始在 test2 上单独安装node组件,实现node功能,再返回来配置test1加入集群 ...
- bootstrap文件上传C#实现
https://www.cnblogs.com/landeanfen/p/5007400.html
- python 将视频转换成音频
安装库 sudo pip install moviepy 代码 index.py from moviepy.editor import * video = VideoFileClip('test.mp ...
- 调用百度api的原理流程
1.为了实现酒店地址的定位 2.使用可视化便捷的百度地图API生成器:设置公司的地址和地图等级 3.设置地图的滚轮.缩放功能 4.获取代码,拷贝到html页面中 5.申请秘钥,在html中引用地图AP ...
- 解决android studio的Gradle一直在sync的办法
出现问题的原因就是gradle下载太慢了. 打开gradle-wrapper.properties文件.查看gradle版本.如下: distributionUrl=https\://services ...
- 云数据库RDS MySQL 版
阿里云关系型数据库(Relational Database Service,简称RDS)是一种稳定可靠.可弹性伸缩的在线数据库服务.基于阿里云分布式文件系统和SSD盘高性能存储,RDS支持MySQL. ...
- .Net Core Grpc 实现通信
.Net Core 3.0已经把Grpc作为一个默认的模板引入,所以我认为每一个.Net程序员都有学习Grpc的必要,当然这不是必须的. 我在我的前一篇文章中介绍并创建了一个.Net Core 3.0 ...
- JavaRMI框架
RMI(即Remote Method Invoke 远程方法调用).在Java中,只要一个类extends了java.rmi.Remote接口,即可成为存在于服务器端的远程对象,供客户端访问并提供一 ...
- C/C++的几个输入流
C: 1.scanf( ) 存在于<stdio.h>(C++为<cstdio>)中,根据stdin读取数据并根据参数格式进行赋值,以第一个非空格字符(空格字符如:空格,制符表, ...
- CSP 字符串匹配(201409-3)
问题描述 给出一个字符串和多行文字,在这些文字中找到字符串出现的那些行.你的程序还需支持大小写敏感选项:当选项打开时,表示同一个字母的大写和小写看作不同的字符:当选项关闭时,表示同一个字母的大写和小写 ...