漏写的数字

#pragma comment(linker, "/STACK:102400000,102400000")
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<vector>
#include<algorithm>
#include<iostream>
#include<map>
#include<queue>
#include<stack>
#include<string>
#include<functional>
//#include<bits/stdc++.h>
using namespace std;
typedef long long lint; int cmp(const void * x, const void * y) {
#define datatype int
datatype dx = *((datatype *)(x)), dy = *((datatype *)(y));
//x < y
return dx > dy ? : -;
#undef datatype
} char str[];
int s[]; int main() {
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
#endif
std::ios::sync_with_stdio(), cin.tie();
cin >> str;
bool f, f1;
int n = strlen(str);
for (int i = ; i < n; i++) s[i] = str[i] - '';
int ans;
f = true, f1 = false;
int b = s[];
int ptr = ;
while (ptr < n) {
b++;
if (b < ) {
if (s[ptr] == b) {
ptr++;
continue;
} else {
if (f1) {
f = false;
break;
} else {
f1 = true;
ans = b;
}
}
} else {
if (s[ptr] == b / && s[ptr + ] == b % ) {
ptr += ;
continue;
} else {
if (f1) {
f = false;
break;
} else {
f1 = true;
ans = b;
}
}
}
}
if (f && f1) {
cout << ans << endl;
return ;
}
f = true, f1 = false;
b = s[] * + s[];
ptr = ;
while (ptr < n) {
b++;
if (b < ) {
if (s[ptr] == b) {
ptr++;
continue;
} else {
if (f1) {
f = false;
break;
} else {
f1 = true;
ans = b;
ptr++;
}
}
} else {
if (s[ptr] == b / && s[ptr + ] == b % ) {
ptr += ;
continue;
} else {
if (f1) {
f = false;
break;
} else {
f1 = true;
ans = b;
}
}
}
}
if (f && f1) {
cout << ans << endl;
return ;
}
return ;
}

扁平化管理

#pragma comment(linker, "/STACK:102400000,102400000")
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<vector>
#include<algorithm>
#include<iostream>
#include<map>
#include<queue>
#include<stack>
#include<string>
#include<functional>
//#include<bits/stdc++.h>
using namespace std;
typedef long long lint; int cmp(const void * x, const void * y) {
#define datatype int
datatype dx = *((datatype *)(x)), dy = *((datatype *)(y));
//x < y
return dx > dy ? : -;
#undef datatype
} lint a[][];
const lint inf = 0x7FFFFFFFFFFFFFFF; int main() {
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
#endif
std::ios::sync_with_stdio(), cin.tie();
for (int i = ; i < ; i++) {
for (int j = ; j < ; j++) {
lint aaa = , tmp = ;
if (i < j - ) continue;
for (int k = ; k < j; k++) {
aaa *= (i - k + );
tmp += aaa;
if (tmp > 1e18) break;
}
if (tmp > 1e18) a[i][j] = inf;
else a[i][j] = tmp;
}
}
lint n, l;
cin >> n >> l;
bool f = false;
for (int i = ; i < ; i++) {
for (int j = ; j < min((lint), l + ); j++) {
if (a[i][j] >= n && !f) {
cout << i << endl;
f = true;
}
}
}
if (!f) {
if (l == ) cout << n - << endl;
else if (l == ) {
lint tmp = (lint)sqrt(n);
if (tmp * tmp + >= n) cout << tmp << endl;
else cout << tmp + << endl;
} else {
for (int i = ;; i++) {
if (i < l - ) continue;
lint aaa = , tmp = ;
for (int k = ; k < l; k++) {
aaa *= (i - k + );
tmp += aaa;
if (tmp > 1e18) break;
}
if (tmp > n) {
cout << i << endl;
break;
}
}
}
}
return ;
}

小球染色

动态规划:dp[i][j]表示决定了前i个的颜色,最后j个颜色相同的方法数。

#pragma comment(linker, "/STACK:102400000,102400000")
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<vector>
#include<algorithm>
#include<iostream>
#include<map>
#include<queue>
#include<stack>
#include<string>
#include<functional>
//#include<bits/stdc++.h>
using namespace std;
typedef long long lint; int cmp(const void * x, const void * y) {
#define datatype int
datatype dx = *((datatype *)(x)), dy = *((datatype *)(y));
//x < y
return dx > dy ? : -;
#undef datatype
} lint dp[][];
const int mod = ; int main() {
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
#endif
std::ios::sync_with_stdio(), cin.tie();
int n, m, k;
cin >> n >> m >> k;
memset(dp, , sizeof(dp));
dp[][] = m;
for (int i = ; i <= n; i++) {
for (int j = ; j < k; j++) {
dp[i + ][j + ] = (dp[i + ][j + ] + dp[i][j]) % mod;
dp[i + ][] = (dp[i + ][] + dp[i][j] * (m - )) % mod;
}
}
lint ans = ;
for (int i = ; i < k; i++) ans = (ans + dp[n][i]) % mod;
cout << ans << endl;
return ;
}

三角形面积和2

[Offer收割]编程练习赛38的更多相关文章

  1. HihoCoder1652 : 三角形面积和2([Offer收割]编程练习赛38)(几何)(不会几何,占位)

    描述 如下图所示,在X轴上方一共有N个三角形.这些三角形的底边与X轴重合,底边上两个顶点的坐标分别是(Li, 0)和(Ri, 0),底边的对顶点坐标是(Xi, Yi).其中Li ≤ Xi ≤ Ri 且 ...

  2. HihoCoder1651 : 小球染色([Offer收割]编程练习赛38)(DP的优化)

    描述 小Ho面前有N个小球排成了一排.每个小球可以被染成M种颜色之一. 为了增强视觉效果,小Ho希望不存在连续K个或者K个以上的小球颜色一样. 你能帮小Ho计算出一共有多少种不同的染色方法么? 例如N ...

  3. HihoCoder1650 : 扁平化管理([Offer收割]编程练习赛38)(二分)

    描述 小Hi的公司包括CEO在内一共有N名员工.这N名员工的上下级关系形成树形结构,CEO处于树根,普通员工处于叶子节点. 现在公司希望管理扁平化,要求树形结构中的层级不超过L层.此外,假设A是B的直 ...

  4. HihoCoder1649 : 漏写的数字([Offer收割]编程练习赛38)(模拟题)

    描述 小A今年刚上幼儿园,正在学习写100以内的数字.幼儿园的老师留了一项作业,要求小A从某个100以内的数X开始一直写到另一个100以内的数Y(Y - X > 1). 不过粗心的小A在作业中漏 ...

  5. hihocoder [Offer收割]编程练习赛4

    描述 最近天气炎热,小Ho天天宅在家里叫外卖.他常吃的一家餐馆一共有N道菜品,价格分别是A1, A2, ... AN元.并且如果消费总计满X元,还能享受优惠.小Ho是一个不薅羊毛不舒服斯基的人,他希望 ...

  6. hihocoder [Offer收割]编程练习赛61

    [Offer收割]编程练习赛61 A:最小排列 给定一个长度为m的序列b[1..m],再给定一个n,求一个字典序最小的1~n的排列A,使得b是A的子序列. 贪心即可,b是A的子序列,把不在b中的元素, ...

  7. [Offer收割]编程练习赛46

    [Offer收割]编程练习赛46赛后题解 A.AEIOU 分析

  8. [Offer收割]编程练习赛97

    链接 [https://hihocoder.com/contest/offers97/problems] 题意 题目1 : 放置矩形 时间限制:10000ms 单点时限:1000ms 内存限制:256 ...

  9. hihoCoder[Offer收割]编程练习赛1题目解析

    题目1 : 九宫 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描写叙述 小Hi近期在教邻居家的小朋友小学奥数.而近期正好讲述到了三阶幻方这个部分,三阶幻方指的是将1~9不反 ...

随机推荐

  1. SQL基本概述

    DBMS的种类: 层次数据库HDB 面向对象数据库OODB XML数据库XMLDB 键值存储系统KVS 关系数据库RDB RDBMS(关系数据库管理系统),主要5有种: Oracle Database ...

  2. 插入DOM元素

    插入Dom元素两种情况: 1.要插入的元素是从页面中获取的dom结构 ,例如:$(".item") 2.要插入的元素是通过变量存储的dom结构,例如:var html = &quo ...

  3. Java JPA通过hql语句查询数据

    import javax.persistence.PersistenceContext; import javax.persistence.Query; public class StudentSer ...

  4. Eclipse(含STS)安装插件/软件、更新

    安装方式 Eclipse安装插件的三种方式 直接复制安装 离线下载好插件,通常去这个插件的官网去找,就是在线安装的地址?如testng可以去http://beust.com/eclipse即http: ...

  5. Ubuntu14.043下QT5.5的安装与一点问题

    请注明来自于 http://www.cnblogs.com/usegear/p/5100720.html 1.下载qt-opensource-linux-x86-5.5.0.run(去教育镜像网站下载 ...

  6. java异常处理的面试题

    package test; public class Test { public static int method(int i) throws Exception { try { return 10 ...

  7. How many integers can you find

    How many integers can you find Time Limit: 12000/5000 MS (Java/Others)    Memory Limit: 65536/32768 ...

  8. 洛谷 P1595 信封问题

    题目描述 某人写了n封信和n个信封,如果所有的信都装错了信封.求所有信都装错信封共有多少种不同情况. 输入输出格式 输入格式: 一个信封数n 输出格式: 一个整数,代表有多少种情况. 输入输出样例 输 ...

  9. MySQL:浅析 Impossible WHERE noticed after reading const tables

    使用 EXPLAIN 执行计划的时候,在 Extra 中偶尔会看到这样的描述: Impossible WHERE noticed after reading const tables 字面上的意思是: ...

  10. requireJS文件夹

    前言 对于像我这样的requireJS刚開始学习的人而言,requireJS最难理解的部分应该是它的路径问题.晚上随便折腾了一下,算是略微理清了这个文件夹问题吧. requireJS学习网址:requ ...