一个C程序是由一个或者多个函数组成,并必须只有一个main()函数。我建议不要使用void
main的形式,同建议用 int main 然后return
0;的形式,至于为什么要这样做,我也不知道。

首先确定zabbix开启了中文支持功能:
登录到zabbix服务器的数据目录下(前面部署的zabbix数据目录是/data/www/zabbix),打开
locales.inc.php文件

[root@Zabbix-server include]# pwd
/data/www/zabbix/include
[root@Zabbix-server include]# vim locales.inc.php

题意

$m$个不同单位代表参加会议,第$i$个单位有$r_i$个人

$n$张餐桌,第$i$张可容纳$c_i$个代表就餐

同一个单位的代表需要在不同的餐桌就餐

问是否可行,要求输出方案

一个文件内、一个函数内、一个控制语句内、一对花括号内,都可以称为一个代码块。

图片 1

Sol

比较zz的最大流

从$S$向$1-m$连流量为$r_i$的边

从$m + 1$向$m + n$连流量为$c_i$的边

从$1-m$向$m + 1$到$m + n$中的每个点连流量为$1$的边

跑最大流即可

#include<cstdio>#include<queue>#include<cstring>using namespace std;const int MAXN = 1e5 + 10, INF = 1e9 + 10;inline int read() {    char c = getchar(); int x = 0, f = 1;    while(c < '0' || c > '9') {if(c == '-') f = -1; c = getchar();}    while(c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();    return x * f;}int M, N, S, T;int r[MAXN], c[MAXN];struct Edge {    int u, v, f, nxt;}E[MAXN];int head[MAXN], cur[MAXN], num;inline void add_edge(int x, int y, int f) {    E[num] = {x, y, f, head[x]};    head[x] = num++;}inline void AddEdge(int x, int y, int z) {    add_edge;    add_edge(y, x, 0);}int sum = 0, deep[MAXN];bool BFS() {    queue<int> q; q.push;    memset(deep, 0, sizeof; deep[S] = 1;    while(!q.empty {        int p = q.front(); q.pop();        for(int i = head[p]; i != -1; i = E[i].nxt) {            int to = E[i].v;            if(!deep[to] && E[i].f) {                deep[to] = deep[p] + 1;                q.push;            }        }    }    return deep[T] > 0;}int DFS(int x, int flow) {    if return flow;    int ansflow = 0;    for(int &i = cur[x]; i != -1; i = E[i].nxt) {        int to = E[i].v;        if(deep[to] == deep[x] + 1 && E[i].f) {            int nowflow = DFS(to, min(flow, E[i].f));            E[i].f -= nowflow; E[i ^ 1].f += nowflow;            ansflow += nowflow; flow -= nowflow;            if(flow <= 0) break;        }    }    return ansflow;}int Dinic() {    int ans = 0;    while {        memcpy(cur, head, sizeof;        ans += DFS;    }    return ans;}int main() {    memset(head, -1, sizeof;    M = read(); N = read(); S = 0; T = M + N + 1;    for(int i = 1; i <= M; i++) r[i] = read(), AddEdge(S, i, r[i]), sum += r[i];    for(int i = 1; i <= N; i++) c[i] = read(), AddEdge(i + M, T, c[i]);    for(int i = 1; i <= M; i++)        for(int j = 1; j <= N; j++)            AddEdge(i, j + M, 1);    if >= sum) printf("1\n");    else {printf("0"); return 0;}     for(int x = 1; x <= M; x++) {        for(int i = head[x]; i != -1; i = E[i].nxt)             if(E[i].f == 0)                printf("%d ", E[i].v - M);        puts("");    }    return 0;}

声明与定义

然后登陆zabbix后,点击右上角的“用户”图标,将语言设置为“中文”:

int num;这就是声明,而且是定义性声明。

图片 2

声明(declaration)指定了一个变量的标识符,用来描述变量的类型,是类型还是对象,或者函数等。

图片 3

定义是对声明的实现或者实例化。

修改为“中文”语言后,添加监控项的配置,发现监控图中出现中文乱码!

声明有两种情况:需要建立存储空间的和不需要建立存储空间的
,前者是定义性声明(defining
declaration),后者是引用性声明(referncing
declaration)

图片 4

广义的来看,声明包含定义,但不是所有的声明都是定义。一般情况下,把建立存储空间的声明称之为“定义”,而把不需要建立存储空间称之为“声明”

这个问题是由于zabbix的web端没有中文字库导致,只需要加上中文字库加上即可~

好像还不大明白?没关系,只需知道定义和声明不大一样就行了

解决办法如下:

发表评论

电子邮件地址不会被公开。 必填项已用*标注