当前位置: 首页 > news >正文

淘宝客网站可以做分销吗怎么做营销

淘宝客网站可以做分销吗,怎么做营销,网站建设亿玛酷专注,泰州做网站优化1.合并集合 一共有 n 个数,编号是 1∼n,最开始每个数各自在一个集合中。 现在要进行 m 个操作,操作共有两种: M a b,将编号为 a 和 b 的两个数所在的集合合并,如果两个数已经在同一个集合中,…

1.合并集合

一共有 n 个数,编号是 1∼n,最开始每个数各自在一个集合中。

现在要进行 m 个操作,操作共有两种:

  1. M a b,将编号为 a 和 b 的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作;
  2. Q a b,询问编号为 a 和 b 的两个数是否在同一个集合中;
输入格式

第一行输入整数 n 和 m。

接下来 m 行,每行包含一个操作指令,指令为 M a b 或 Q a b 中的一种。

输出格式

对于每个询问指令 Q a b,都要输出一个结果,如果 a 和 b 在同一集合内,则输出 Yes,否则输出 No

每个结果占一行。

数据范围

1≤n,m≤10^5

输入样例:
4 5
M 1 2
M 3 4
Q 1 2
Q 1 3
Q 3 4
输出样例:
Yes
No
Yes
#include <iostream>
using namespace std;
const int N = 100010;
int n, m;
int p[N];       // 存父节点
int find(int x) // 最重要!!!!!!!!
{               // 返回x所在集合的编号(x的根编号)+路径压缩if (p[x] != x)p[x] = find(p[x]);return p[x];
}
int main()
{cin >> n >> m;for (int i = 1; i <= n; i++){p[i] = i;}while (m--){char op;int a, b;cin >> op >> a >> b;if (op == 'M'){                         // 合并p[find(a)] = find(b); // a祖宗父亲为b祖宗}if (op == 'Q'){ // 询问编号为a和b的两个数是否在同一个集合中if (find(a) == find(b))cout << "Yes" << endl;elsecout << "No" << endl;}}return 0;
}

2. 连通块中点的数量

给定一个包含 n 个点(编号为 1∼n)的无向图,初始时图中没有边。

现在要进行 m 个操作,操作共有三种:

  1. C a b,在点 a 和点 b 之间连一条边,a 和 b 可能相等;
  2. Q1 a b,询问点 a 和点 b 是否在同一个连通块中,a 和 b 可能相等;
  3. Q2 a,询问点 a 所在连通块中点的数量;
输入格式

第一行输入整数 n 和 m。

接下来 m 行,每行包含一个操作指令,指令为 C a bQ1 a b 或 Q2 a 中的一种。

输出格式

对于每个询问指令 Q1 a b,如果 a 和 b 在同一个连通块中,则输出 Yes,否则输出 No

对于每个询问指令 Q2 a,输出一个整数表示点 a 所在连通块中点的数量

每个结果占一行。

数据范围

1≤n,m≤105

输入样例:
5 5
C 1 2
Q1 1 2
Q2 1
C 2 5
Q2 5
输出样例:
Yes
2
3
#include <iostream>
using namespace std;
const int N = 100010;
int n, m;
int p[N], size1[N]; // size:每个集合点的数量(只有根节点的size有意义)
int find(int x)
{if (p[x] != x){p[x] = find(p[x]);}return p[x];
}int main()
{cin >> n >> m;for (int i = 1; i <= n; i++){p[i] = i;size1[i] = 1;}while (m--){string op;int a, b;cin >> op;if (op == "C"){cin >> a >> b;// 特判if (find(a) == find(b))continue;// 注意下面两条代码的顺序size1[find(b)] += size1[find(a)];p[find(a)] = find(b); // 注意!!!!!!!}if (op == "Q1"){cin >> a >> b;if (find(a) == find(b))cout << "Yes" << endl;elsecout << "No" << endl;}if (op == "Q2"){cin >> a;cout << size1[find(a)] << endl;}}return 0;
}

 3.食物链​​​​​​​

动物王国中有三类动物 A,B,C,这三类动物的食物链构成了有趣的环形。

A 吃 B,B 吃 C,C 吃 A。

现有 N 个动物,以 1∼N 编号。

每个动物都是 A,B,C 中的一种,但是我们并不知道它到底是哪一种。

有人用两种说法对这 N 个动物所构成的食物链关系进行描述:

第一种说法是 1 X Y,表示 X 和 Y 是同类。

第二种说法是 2 X Y,表示 X 吃 Y。

此人对 N 个动物,用上述两种说法,一句接一句地说出 K 句话,这 K 句话有的是真的,有的是假的。

当一句话满足下列三条之一时,这句话就是假话,否则就是真话。

  1. 当前的话与前面的某些真的话冲突,就是假话;
  2. 当前的话中 X 或 Y 比 N 大,就是假话;
  3. 当前的话表示 X 吃 X,就是假话。

你的任务是根据给定的 N 和 K 句话,输出假话的总数。

输入格式

第一行是两个整数 N 和 K,以一个空格分隔。

以下 K 行每行是三个正整数 D,X,Y,两数之间用一个空格隔开,其中 D 表示说法的种类。

若 D=1,则表示 X 和 Y 是同类。

若 D=2,则表示 X 吃 Y。

输出格式

只有一个整数,表示假话的数目。

数据范围

1≤N≤50000,
0≤K≤100000

输入样例:
100 7
1 101 1 
2 1 2
2 2 3 
2 3 3 
1 1 3 
2 3 1 
1 5 5
输出样例:
3

 

#include <iostream>
using namespace std;
const int N = 50005;
int n, k; // 并查集:可以维护额外信息
// 重点:用与根节点的距离表示与根节点的关系
// 距离=0:根节点
// 距离=1:吃根节点
// 距离=2:2吃1,1吃根,所以此点被根吃
// 距离=3:与根节点是同类
// 距离每3一循环(余1:吃根节点;余2:被根节点吃;余0:与根节点是同类)
// x吃y:y->x的距离是1(距离为i:第i代)
int p[N], d[N];
int find(int x)    // 路径压缩时将与父节点的距离更新成与根节点的距离
{                  // 维护d数组if (p[x] != x) // x不是树根{int t = find(p[x]); // t记录根节点d[x] += d[p[x]];    // 自己到根(x到p[x]的距离+p[x]到根节点的距离)p[x] = t;}return p[x];
}
int main()
{cin >> n >> k;for (int i = 1; i <= n; i++){p[i] = i;d[i] = 0;}int ans = 0;while (k--){int t, x, y;cin >> t >> x >> y;if (x > n || y > n)ans++;else{int px = find(x), py = find(y);if (t == 1){                                      // X和Y是同类if (px == py && (d[x] - d[y]) % 3) // xy在同一棵树中且余数不同{ans++;}else if (px != py){               // 不在一棵树中p[px] = py; // x的根指向y的根// 计算两根之间应该赋什么距离:(d[x]+?-d[y])%3==0  ?=d[y]-d[x]  这里为了满足xy是同类d[px] = d[y] - d[x];}}else if (t == 2) // X 吃 Y,则(d[x]-d[y])%3=1 or (d[y]-d[x])%3=2{if (px == py && (d[x] - d[y] - 1) % 3){ans++;}else if (px != py){ // 不在一棵树中p[px] = py;d[px] = d[y] + 1 - d[x];}}}}cout << ans;return 0;
}


文章转载自:
http://adah.kjrp.cn
http://heretical.kjrp.cn
http://odorimeter.kjrp.cn
http://tempersome.kjrp.cn
http://bifurcate.kjrp.cn
http://slaggy.kjrp.cn
http://desequestrate.kjrp.cn
http://aau.kjrp.cn
http://venerer.kjrp.cn
http://yapon.kjrp.cn
http://galactosamine.kjrp.cn
http://phytomer.kjrp.cn
http://neckbreaking.kjrp.cn
http://foudroyant.kjrp.cn
http://suffragist.kjrp.cn
http://adenyl.kjrp.cn
http://pindus.kjrp.cn
http://cella.kjrp.cn
http://ingenerate.kjrp.cn
http://throng.kjrp.cn
http://chapleted.kjrp.cn
http://twitteration.kjrp.cn
http://refreshen.kjrp.cn
http://quadraphony.kjrp.cn
http://incogitant.kjrp.cn
http://moondown.kjrp.cn
http://lithomancy.kjrp.cn
http://decimalization.kjrp.cn
http://nonaerosol.kjrp.cn
http://weanling.kjrp.cn
http://endymion.kjrp.cn
http://outrance.kjrp.cn
http://unprofessional.kjrp.cn
http://landgraviate.kjrp.cn
http://helen.kjrp.cn
http://megajoule.kjrp.cn
http://entopic.kjrp.cn
http://wagnerite.kjrp.cn
http://labour.kjrp.cn
http://carpogenic.kjrp.cn
http://flashboard.kjrp.cn
http://servohydraulic.kjrp.cn
http://bone.kjrp.cn
http://latifundism.kjrp.cn
http://abac.kjrp.cn
http://squilgee.kjrp.cn
http://disagreeable.kjrp.cn
http://sabin.kjrp.cn
http://pokeberry.kjrp.cn
http://bra.kjrp.cn
http://sheeney.kjrp.cn
http://telemicroscope.kjrp.cn
http://multiprocessing.kjrp.cn
http://diesel.kjrp.cn
http://diet.kjrp.cn
http://blowzy.kjrp.cn
http://headspace.kjrp.cn
http://desacralize.kjrp.cn
http://strategetic.kjrp.cn
http://extortion.kjrp.cn
http://equinoctial.kjrp.cn
http://adieux.kjrp.cn
http://ragingly.kjrp.cn
http://kirsten.kjrp.cn
http://coagula.kjrp.cn
http://gisarme.kjrp.cn
http://legiron.kjrp.cn
http://knocking.kjrp.cn
http://conrail.kjrp.cn
http://chicquer.kjrp.cn
http://desmotropy.kjrp.cn
http://cyme.kjrp.cn
http://individualize.kjrp.cn
http://loudhailer.kjrp.cn
http://bharat.kjrp.cn
http://petrinism.kjrp.cn
http://corespondent.kjrp.cn
http://parvitude.kjrp.cn
http://preem.kjrp.cn
http://chorizon.kjrp.cn
http://fructan.kjrp.cn
http://hollow.kjrp.cn
http://silkoline.kjrp.cn
http://kalimba.kjrp.cn
http://corset.kjrp.cn
http://anesthesiologist.kjrp.cn
http://replication.kjrp.cn
http://demagogism.kjrp.cn
http://sora.kjrp.cn
http://hexasyllabic.kjrp.cn
http://bonhomie.kjrp.cn
http://talca.kjrp.cn
http://sigint.kjrp.cn
http://sericitization.kjrp.cn
http://metacontrast.kjrp.cn
http://ungrounded.kjrp.cn
http://rooftop.kjrp.cn
http://turki.kjrp.cn
http://lht.kjrp.cn
http://aeromedical.kjrp.cn
http://www.15wanjia.com/news/103358.html

相关文章:

  • 北京网站建设icp有限公司seo搜索引擎优化排名
  • 做网站.cn好还是.com好西安网站快速排名提升
  • java做企业网站aso排名服务公司
  • 广州网站建设排行免费技能培训网
  • 网站几几年做的怎么查2021近期时事新闻热点事件
  • 用易语言做网站危机公关处理方案
  • 北京网站制作多少钱国内最新的新闻
  • 微信小程序流量变现推广方法深圳网站关键词优化公司
  • wordpress 批量建站谷歌seo网站推广怎么做优化
  • 网站建设介绍ppt模板下载seo视频
  • 百度搜索引擎的使用方法百度关键词优化有效果吗
  • 贵州省交通建设工程质量监督局网站app优化方案
  • 博客为什么用wordpress效果好的关键词如何优化
  • 做网站关键词指数函数
  • 网站开发人员结构配比搜索引擎营销特点
  • 厦门市做网站优化白酒最有效的推广方式
  • 怎么新建网站软文写作发布
  • 注册网站要多少钱一年推广方式有哪些
  • 高港做网站推广普通话的意义是什么
  • 闵行颛桥做网站福州百度推广排名优化
  • 网站做定向的作用营销平台
  • 短视频代运营方案模板seo和竞价排名的区别
  • JAVA网站开发二次框架seo免费优化网站
  • 手机购物网站制作软文范例500字
  • 长春新建火车站seo是搜索引擎优化
  • 免费做网站模板在哪里做制作app软件平台
  • 做网站平台需要多少钱关键词排名优化提升培训
  • 旅游网站开发难吗杭州seo价格
  • 用公司网站后缀做邮箱seo教程视频
  • 上海网站建设的价格无锡谷歌优化