A. Thickest Burger

大数 × 2 + 小数

#include <cstdio>
#include <algorithm>
using namespace std; int T;
int A,B;
int main()
{
scanf("%d",&T);
for(int t=1; t<=T; t++)
{
scanf("%d%d",&A,&B);
if(A<B) swap(A,B);
printf("%d\n",A*2+B);
}
return 0;
}

  

B. Relative atomic mass

给定一个分子式,只包含 H C O 三种,求相对分子质量。

#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
const int maxn=15; char s[maxn];
int T, ans = 0;
int main()
{
scanf("%d",&T);
for(int t=1; t<=T; t++)
{
ans=0;
scanf("%s",s);
int n=strlen(s);
for(int i=0; i<n; i++)
{
if(s[i]=='H') ans++;
if(s[i]=='C') ans+=12;
if(s[i]=='O') ans+=16;
}
printf("%d\n",ans);
}
return 0;
}

  

C. Recursive sequence

矩阵快速幂

#include <bits/stdc++.h>
using namespace std; typedef long long LL;
const LL MOD = 2147493647;
int a, b;
LL C[7][7]; void mut(LL A[][7], LL B[][7]) {
memset(C, 0, sizeof(C));
for(int i = 0; i < 7; ++i)
for(int j = 0; j < 7; ++j)
for(int k = 0; k < 7; ++k)
C[i][j] = ( C[i][j] + A[i][k] * B[k][j] ) % MOD;
memcpy(A, C, sizeof(C));
} LL qpow(int n) {
LL aa[7][7] = {{1,2,1,0,0,0,0},{1,0,0,0,0,0,0},{0,0,1,4,6,4,1},{0,0,0,1,3,3,1},{0,0,0,0,1,2,1},{0,0,0,0,0,1,1},{0,0,0,0,0,0,1}};
LL ans[7][7] = {{1,0,0,0,0,0,0},{0,1,0,0,0,0,0},{0,0,1,0,0,0,0},{0,0,0,1,0,0,0},{0,0,0,0,1,0,0},{0,0,0,0,0,1,0},{0,0,0,0,0,0,1}};
while(n) {
if(n&1) mut(ans, aa);
mut(aa,aa);
n>>=1;
}
LL res = ans[0][0] * b % MOD + ans[0][1] * a % MOD + ans[0][2] * 3 * 3 * 3 * 3 % MOD;
res = res + ans[0][3] * 3 * 3 * 3 % MOD + ans[0][4] * 3 * 3 % MOD + ans[0][5] * 3 % MOD;
res = ( res + ans[0][6] ) % MOD;
return res;
} int main() {
int T;
scanf("%d", &T);
while(T--) {
int n;
scanf("%d%d%d", &n, &a, &b);
if(n == 1) {
printf("%d\n",a);
continue;
}
LL ans = qpow(n-2);
printf("%lld\n", ans);
}
return 0;
}

  

D. Winning an Auction

博弈

E. Counting Cliques

爆搜。vector[i] 记录与 i 有边且编号大于的点。

#include <cstdio>
#include <cstring>
#include <algorithm>
#include <vector>
using namespace std;
const int maxn = 100 + 10;
const int maxm = 1000 + 100; int n, m, k;
vector<int> v[maxn];
int from[maxm], to[maxm];
int G[maxn][maxn];
int d[maxn], node[maxn];
int tot, ans; void DFS(int x, int start)
{
if (tot == k) { ++ans; return; } int sz = v[x].size();
for (int i = start; i < sz; i++)
{
int flag = 0;
for (int j = 2; j <= tot; j++)
if (!G[ node[j] ][ v[x][i] ]) { flag = 1; break; } if (flag) continue; node[++tot] = v[x][i], DFS(x, i+1), --tot;
}
} int main()
{
int t;
scanf("%d", &t);
for (int ca = 1; ca <= t; ca++)
{
memset(d, 0, sizeof(d));
for (int i = 1; i <= n; i++)
{
for (int j = i+1; j <= n; j++) G[i][j] = G[j][i] = 0;
v[i].clear();
} scanf("%d%d%d", &n, &m, &k);
for (int i = 1; i <= m; i++)
{
scanf("%d%d", &from[i], &to[i]);
d[ from[i] ]++, d[ to[i] ]++;
} for (int i = 1; i <= m; i++)
if (d[ from[i] ] >= k-1 && d[ to[i] ] >= k-1)
{
if (from[i] < to[i]) v[ from[i] ].push_back(to[i]);
else v[ to[i] ].push_back(from[i]);
G[ from[i] ][ to[i] ] = G[ to[i] ][ from[i] ] = 1;
} ans = 0;
for (int i = 1; i <= n; i++)
{
tot = 1, node[1] = i;
DFS(i, 0);
} printf("%d\n", ans);
}
}

  

F. Similar Rotations

G. Do not pour out

H. Guessing the Dice Roll

I. The Elder

J. Query on a graph

K. New Signal Decomposition

L. A Random Turn Connection Game

M. Subsequence

The 2016 ACM-ICPC Asia Shenyang Regional Contest的更多相关文章

  1. 2016 ACM/ICPC Asia Regional Shenyang Online 1003/HDU 5894 数学/组合数/逆元

    hannnnah_j’s Biological Test Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K ...

  2. 2016 ACM/ICPC Asia Regional Shenyang Online 1009/HDU 5900 区间dp

    QSC and Master Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) ...

  3. 2016 ACM/ICPC Asia Regional Shenyang Online 1007/HDU 5898 数位dp

    odd-even number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)T ...

  4. 2016 ACM/ICPC Asia Regional Qingdao Online 1001/HDU5878 打表二分

    I Count Two Three Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  5. 2016 ACM/ICPC Asia Regional Dalian Online 1002/HDU 5869

    Different GCD Subarray Query Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K ( ...

  6. 2016 ACM/ICPC Asia Regional Dalian Online 1006 /HDU 5873

    Football Games Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)To ...

  7. HDU 5874 Friends and Enemies 【构造】 (2016 ACM/ICPC Asia Regional Dalian Online)

    Friends and Enemies Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Othe ...

  8. HDU 5889 Barricade 【BFS+最小割 网络流】(2016 ACM/ICPC Asia Regional Qingdao Online)

    Barricade Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total S ...

  9. HDU 5875 Function 【倍增】 (2016 ACM/ICPC Asia Regional Dalian Online)

    Function Time Limit: 7000/3500 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total ...

  10. HDU 5873 Football Games 【模拟】 (2016 ACM/ICPC Asia Regional Dalian Online)

    Football Games Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)To ...

随机推荐

  1. Yii2.0 高级版安装 windows

    最近在学习yii2.0 在安装高级版的时候遇到一些问题 索性解决了 下面分享一下 一.关于下载 自行百度,在Yii Framework 中文社区 下载专区下载高级应用程序模板(这边下载用电信网络不用下 ...

  2. 9.26<立方网>技术笔试题

    该公司题目感觉不难,算法设计有三道大题. 1.设有m和n两个整数,求它们的最大公约数和最小公倍数. 2.猴子分桃问题,每次分桃多一个,共有五个猴子,问最少有多少个桃子. 3.关于java的题目,有A, ...

  3. iOS开发 - 在状态栏显示FPS,CPU和内存信息

    原理 FPS的计算 CoreAnimation有一个很好用的类CADisplayLink,这个类会在每一帧绘制之前调用,并且可以获取时间戳.于是,我们只要统计出,在1s内的帧数即可. - (void) ...

  4. N 叉树的层序遍历

    给定一个 N 叉树,返回其节点值的层序遍历. (即从左到右,逐层遍历). 例如,给定一个 3叉树 : 返回其层序遍历: [ [1], [3,2,4], [5,6] ] 说明: 树的深度不会超过 100 ...

  5. 如何在InstallShield的MSI工程中调用Merge Module的Custom Action

    使用InstallShield创建了合并模块安装程序,定义自定义活动,可如何调用却不太清楚,网上也就找到这点信息,还是没有成功,到底该在什么地方执行合并模块的自定义活动? http://1662487 ...

  6. TTTAttributedLabel颜色设置

    NSString *text = @"Lorem ipsum dolor sit amet"; [self.testAttributedLabel setText:text aft ...

  7. java核心技术 要点笔记3

    1.类,超类和子类 2.Object:所有类的超类 3.泛型数组列表 4.对象包装器和自动装箱 5.参数数量可变的方法 6.枚举类 7.反射 8.继承设计的技巧

  8. shp格式数据发布服务:postGIS + postgresql + geoserver

    主要流程: ①使用postgresql创建数据库 ②下载安装postgis插件 ③在创建的数据库中使用postgis插件,执行下列语句 CREATE EXTENSION postgis; CREATE ...

  9. 日常入新坑,py一下

    首先是IDE,因为我经常在Ubuntu 18和win 10两个系统换来换去,所以IDE必须要能跨平台,所以这里就选了PyCharm.Py划重点—— 从Jet Brains的网站下载安装包,直接跟着默认 ...

  10. IOS 当一个控件被添加到父控件中会调用(didMoveToSuperview)

    /** * 当一个控件被添加到父控件中就会调用 */ - (void)didMoveToSuperview { if (self.group.opened) { self.nameView.image ...