B:分析序列 构造树(优先队列)

#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define foror(i,a,b) for(i=a;i<b;i++)
#define foror2(i,a,b) for(i=a;i>b;i--)
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define lson o<<1, l, m
#define rson o<<1|1, m+1, r
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que;
typedef long long ll;
vector<int> tree[];
int visit[];
int pop=;
int pop1=;
int scan[];
priority_queue<int, vector<int>, greater<int> > leaf;
int maxn=;
int main()
{
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
int now;
//TS;
while(scanf("%d ",&now)!=EOF)
{
scan[++pop]=now;
maxn=max(maxn,now);
visit[now]++;
}
//cout<<maxn<<endl;
visit[maxn]++;
//TS;
for(int i=;i<=maxn;i++)
{
if(visit[i]==)
{
leaf.push(i);
}
}
while(!leaf.empty())
{
int cur;
cur= leaf.top();
leaf.pop();
tree[scan[pop1]].push_back(cur);
//cout<<scan[pop1]<<"pushin:"<<cur<<endl;
tree[cur].push_back(scan[pop1]);
//cout<<cur<<"pushin:"<<scan[pop1]<<endl;
if(--visit[scan[pop1]]==)
leaf.push(scan[pop1]);
pop1++;
}
for(int i=;i<=maxn;i++)
{
//printf("%d ",tree[i].size());
sort(tree[i].begin(),tree[i].end());
printf("%d:",i);
for(int j=;j<(int)tree[i].size();j++)
{
printf(" %d",tree[i][j]);
}
printf("\n");
}
return ;
}

C:求满足题意的正方形个数(二维前缀和 前缀和思想)  更难的相似的:http://agc015.contest.atcoder.jp/tasks/agc015_c

F: 打表找规律

#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define foror(i,a,b) for(i=a;i<b;i++)
#define foror2(i,a,b) for(i=a;i>b;i--)
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define lson o<<1, l, m
#define rson o<<1|1, m+1, r
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que;
typedef long long ll;
int main()
{
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
int t;
cin >> t;
while(t--)
{
int s,k;
scanf("%d %d",&s,&k);
if(k%==)
{
if(s%==)
{
cout<<<<endl;
continue;
}
else
{
cout<<<<endl;
continue;
}
}
else
{
/*int now=0;
while(s>0)
{
now+=s%k;
s/=k;
}
cout<<now<<endl;*/
int now=s%(k+);
if(now%==)
cout<<<<endl;
else
{
if(now==k)
cout<<k<<endl;
else
cout<<<<endl;
}
}
}
return ;
}

G:水

H:二进制分析(lucky 测试数据没有失败的也没有要求最优解的)

#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define foror(i,a,b) for(i=a;i<b;i++)
#define foror2(i,a,b) for(i=a;i>b;i--)
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define lson o<<1, l, m
#define rson o<<1|1, m+1, r
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que;
typedef long long ll;
int er[];
int er2[];
int ans[];
ll l,r;
int pop=;
ll anser1=;
void init(ll t)
{
int pop=;
while(t>)
{
er[pop++]=t%;
t=t/;
}
}
void init2(ll t)
{
int pop=;
while(t>)
{
er2[pop++]=t%;
t=t/;
}
}
ll now[];
int main()
{
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
mem(ans,-);
int flag=;
int have=;
int n;
cin >> n;
for(int i=;i<=n;i++)
cin>>now[i];
for(int i=;i<n;i++)
{
if(flag==)
break;
mem(er,);
mem(er2,);
ll cur=now[i];
ll next=now[i+];
init(cur);
init2(next);
int flag2=;
for(int j=;j>=;j--)
{
if(er[j]!=er2[j])
{
// cout<< j<<endl;
if(er[j]==&&er2[j]==)
{
if(ans[j]==-)
{
ans[j]=;
have++;
flag2=;
break;
}
else if(ans[j]==)
{
flag2=;
break;
}
}
else if(er[j]==&&er2[j]==)
{
if(ans[j]==-)
{
ans[j]=;
have++;
flag2=;
break;
}
else if(ans[j]==)
{
flag2=;
break;
}
}
}
}
if(flag2==)
flag=;
}
if(flag==)
{
cout<<<<endl;
return ;
}
ll anser=1LL*<<(-have);
cout<<anser<<endl;
return ;
}

I:数位DP

#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define foror(i,a,b) for(i=a;i<b;i++)
#define foror2(i,a,b) for(i=a;i>b;i--)
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000007
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define lson o<<1, l, m
#define rson o<<1|1, m+1, r
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que;
typedef long long ll;
ll ans[][];
void init()
{
ans[][]=,ans[][]=ans[][]=;
for(int i=;i<=;i++)
{
ans[i+][]=(ans[i][]+ans[i][]+ans[i][])*%MOD;
ans[i+][]=ans[i][]%MOD,ans[i+][]=ans[i][]%MOD;
}
}
int main()
{
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
init();
int t;
cin >> t;
while(t--)
{
int n;
scanf("%d",&n);
ll anser=(ans[n][]+ans[n][]+ans[n][])%MOD;
cout<<anser<<endl;
}
return ;
}

Summer training #5的更多相关文章

  1. 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) ...

  2. 2016 Multi-University Training Contests

    2016 Multi-University Training Contest 1 2016 Multi-University Training Contest 2 2016 Multi-Univers ...

  3. 2016 Multi-University Training Contest 2 D. Differencia

    Differencia Time Limit: 10000/10000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tot ...

  4. 2016 Multi-University Training Contest 1 G. Rigid Frameworks

    Rigid Frameworks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  5. ACM: Gym 101047K Training with Phuket's larvae - 思维题

     Gym 101047K Training with Phuket's larvae Time Limit:2000MS     Memory Limit:65536KB     64bit IO F ...

  6. The Solution of UESTC 2016 Summer Training #1 Div.2 Problem C

    Link http://acm.hust.edu.cn/vjudge/contest/121539#problem/C Description standard input/output After ...

  7. 2012 Multi-University Training Contest 9 / hdu4389

    2012 Multi-University Training Contest 9 / hdu4389 打巨表,实为数位dp 还不太懂 先这样放着.. 对于打表,当然我们不能直接打,这里有技巧.我们可以 ...

  8. 2014 Multi-University Training Contest 9#11

    2014 Multi-University Training Contest 9#11 Killing MonstersTime Limit: 2000/1000 MS (Java/Others)   ...

  9. 2014 Multi-University Training Contest 9#6

    2014 Multi-University Training Contest 9#6 Fast Matrix CalculationTime Limit: 2000/1000 MS (Java/Oth ...

  10. 2016 Multi-University Training Contest 1

    8/11 2016 Multi-University Training Contest 1 官方题解 老年选手历险记 最小生成树+线性期望 A Abandoned country(BH) 题意: 1. ...

随机推荐

  1. 【HANA系列】SAP HANA SQL去除字符串空格

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL去除字符 ...

  2. 3.React中的setstate的几个现象

    转载segfault 上面的一篇文章,https://segmentfault.com/a/1190000014498196 1.在同一个方法中多次setState是会被合并的,并且对相同属性的设置只 ...

  3. HADOOP依赖

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...

  4. django 之(三) --- 会话|关系|静态*

    会话技术 HTTP在web开发中基本都是短连接[一个请求的生命周期都是从request开始到response结束]. 下次再来请求就是一个新的连接了.为了让服务器端记住用户端是否登陆过就出现了会话技术 ...

  5. freeRTOS学习8-21

    不能再中断服务程序调用该函数 应该调用xQueueSendFromISR()

  6. pramfs理论

    一.文件系统 1.百度百科: http://baike.baidu.com/link?url=WE3aLsszfbZZIPK-Vz8yPd799_RMqyfQZ4D-ETS5yd1nI8XzPK660 ...

  7. SQL用法三(游标和Fetch)

    /一般情况下,我们用SELECT这些查询语句时,都是针对的一行记录而言,如果要在查询分析器中对多行记录(即记录集)进行读取操作时,则需要使用到游标或WHILE等循环/以下内容摘自http://www. ...

  8. Linux-echo:打印彩色输出

    脚本可以使用转义序列在终端中生成彩色文本 文本颜色是由对应的色彩码来描述的.其中包括: 重置=0,黑色=30,红色=31,绿色=32, 黄色=33,蓝色=34,洋红=35,青色=36,白色=37. 要 ...

  9. Dom编程-左侧菜单栏设计模型实现

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. js gridview中checkbox的全选与全不选

    1.html: <asp:GridView runat="server" ID="gvAddBySR" AutoGenerateColumns=" ...