小良的分布式之路

事业常成于坚忍,毁于浮躁

小玉买文具

题目描述

班主任给小玉一个任务,到文具店里买尽量多的签字笔。已知一只签字笔的价格是 $1$ 元 $9$ 角,而班主任给小玉的钱是 $a$ 元 $b$ 角,小玉想知道,她最多能买多少只签字笔呢。

输入格式

输入只有一行两个整数,分别表示 $a$ 和 $b$。

输出格式

输出一行一个整数,表示小玉最多能买多少只签字笔。

样例 #1

样例输入 #1

1
10 3

样例输出 #1

1
5

提示

数据规模与约定

对于全部的测试点,保证 $0 <= a <= 10^4$,$0 <= b <= 9$。

阅读全文 »

这篇文章是昨天刚放出来的,还挺巧,前段时间我刚好在面试过程中被面试官问到这个系统的相关问题。我们借这个机会,正好深入看一下这篇文章。

业务背景

精细化营销是广告系统中极为重要的一环。依赖于客户画像平台对用户画像的精确标注,广告系统可以针对性地进行广告投放,实现所谓精准投放的效果。这个过程中,分析师需要通过用户标签进行人群圈选,以挑选出最合适的目标用户群体。对于这类操作,业务方自然是希望能够更加高效地获得更加实时的圈选结果。因此,这类平台会遇到两方面的问题:

  • 第一,由于此类查询分析是临时性的,各种标签组合数巨大,离线预计算无法满足此类灵活性。
  • 第二,由于此类查询是实时场景,查询性能变得非常关键, 通常一次查询在分钟级,耗时较长,无法满足分析师需求。

这篇文章介绍了如何在 OLAP 场景下解决人群圈选查询的需求,并介绍了 ByteHouse 的使用。在 10 亿级用户测试数据下,整体查询 P99 小于 10s。

整体架构

整个业务系统的数据架构如下:

数据架构图

阅读全文 »

这道题纯粹就是一道试机题,只要正常输出结果就可以了,下面是我的代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include "iostream"

using namespace std;

string s[] = {" ********",
" ************",
" ####....#.",
" #..###.....##....",
" ###.......###### ### ###",
" ........... #...# #...#",
" ##*####### #.#.# #.#.#",
" ####*******###### #.#.# #.#.#",
" ...#***.****.*###.... #...# #...#",
" ....**********##..... ### ###",
" ....**** *****....",
" #### ####",
" ###### ######",
"##############################################################",
"#...#......#.##...#......#.##...#......#.##------------------#",
"###########################################------------------#",
"#..#....#....##..#....#....##..#....#....#####################",
"########################################## #----------#",
"#.....#......##.....#......##.....#......# #----------#",
"########################################## #----------#",
"#.#..#....#..##.#..#....#..##.#..#....#..# #----------#",
"########################################## ############"};

int main() {
for (string str : s) {
cout << str << endl;
}

return 0;
}

非常朴实无华地用一个数组把需要输出的字符画保存起来输出就行了。没有什么技巧。

试机题,直接贴一下题解:

1
2
3
4
5
6
7
8
9
10
#include "iostream"

using namespace std;

int main() {
int a, b;
cin >> a >> b;
cout << a + b;
return 0;
}