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) ...
随机推荐
- java浮点型数据保留两位小数
/*** * 保留2位小数 * @param floatValue * @return */ float scale(Float floatValue) { DecimalFormat format ...
- git 参考手册-简明指南
很久没发文了,来头条以后更忙了,也没精力去分享一些有营养的内容了.这次分享的 git 的方方面面,基本来自于我的笔记.git 这东西算是为数不多每天都要用的东西了,但是我觉得也不至于从头至尾去了解他的 ...
- OpenCV阈值化处理
图像的阈值化就是利用图像像素点分布规律,设定阈值进行像素点分割,进而得到图像的二值图像.图像阈值化操作有多种方法,常用方法有经典的OTSU.固定阈值.自适应阈值.双阈值及半阈值化操作.这里对各种阈值化 ...
- python基础知识(列表详解)
列表(list) 列表中可以存入整数.实数.布尔值.字符串.序列.对象 可变序列 列表 [] 元素间隔用 ,号分隔 列表的创建和删除 使用赋值运算符直接创建列表 listname = [元素1 ...
- 05-前端之jQuery
一. jQuery是什么? <1> jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其team. <2> jQuery ...
- 自然数幂和(递推式k^2方法)
先用这个方法顶一下!
- webdriervAPI(下载文件)
from selenium import webdriver driver = webdriver.Chorme() driver.get("http://www.baidu.co ...
- 微服务之服务注册与发现--Eureka(附代码)
该贴为入门贴,看完可快速知道服务注册与发现是什么?怎么用?至于深入的内容不在此篇文章所述之内,请自行百度. 内容来自:https://blog.csdn.net/nanbiebao6522/artic ...
- cm_api
cm API:https://github.com/cloudera/cm_api/tree/master/python/examples/auto-deploy#看集群有几个clustercurl ...
- rtsp学习----海康RTSP客户端连接深入分析
转载于:http://blog.csdn.net/zhouyongku/article/details/41546789 海康相机RTSP连接代码分析 最近在做海康相机rtsp连接获取音视频的工作,现 ...