货车运输
这是一道比较综合的题,非常的niubility(我不会做的题都niubility,QWQ),用到的知识包括图论、倍增、贪心、LCA、生成树、并查集。
- 描述:
A国有n座城市,编号从1到n,城市之间有m条双向道路。每一条道路对车辆都有重量限制,简称限重。现在有q辆货车在运输货物, 司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物。
这是一道比较综合的题,非常的niubility(我不会做的题都niubility,QWQ),用到的知识包括图论、倍增、贪心、LCA、生成树、并查集。
A国有n座城市,编号从1到n,城市之间有m条双向道路。每一条道路对车辆都有重量限制,简称限重。现在有q辆货车在运输货物, 司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物。
对一个给定的自然数$M$,求出所有的连续的自然数段,这些连续的自然数段中的全部数之和为$M$。
例子:1998+1999+2000+2001+2002 = 10000,所以从1998到2002的一个自然数段为$M=10000$的一个解。
先看一道比luogu p1880简单的题目。
有n堆石子排成一排,每堆石子有一定的数量,将n堆石子合并成一堆。合并的规则是每次只能合并相邻的两堆石子,合并的花费为这两堆石子的总数。石子经过n-1次合并后成为一堆,求总的最小花费和最大花费。
99°是一位爱好爬山的小青年,他每次在爬山过程中都会遇到很多小猴子,小猴子们喜欢向他提这样一种问题:在1 ~ n中找一个数字m,使得m的各个数位乘积最大。99°不擅长回答这种问题,你能帮他写一个程序得到结果吗?
给出一个非空的字符串,判断这个字符串是否由它的一个子串进行多次首尾拼接构成。
例如,“abcabcabc”满足条件,因为它是由“abc”首尾拼接而成,而“abcab”则不满足条件。
输入时:
float型输入用%f。
double型输入用%lf。
Git是一个非常强大的项目版本控制管理工具,在单机环境下,可以简单有效地使用Git
1 | CC=gcc |
准备工作
main.cpp
1 | #include <iostream> |
a.h
1 | #ifndef AH_H |
a.cpp
1 | #include <stdio.h> |