#include <iostream>
#include <vector>
#include <algorithm>
long long cmp(std::vector<long long>& a, std::vector<long long>& b)
{
return a[0] < b[0];
}
int main()
{
long long n, L;
long long i = 0;
long long pre = 0;
long long last = 0;
long long minNum = 0;
std::cin >> n;
std::cin >> L;
std::vector<std::vector<long long>> viewRange(n, std::vector<long long>(2, -1));
for (int i = 0; i < n; i++)
{
std::cin >> viewRange[i][0];
std::cin >> viewRange[i][1];
}
sort(viewRange.begin(), viewRange.end(), cmp);
while (i < n)
{
while (i < n && viewRange[i][0] <= pre)
{
last = std::max(last, viewRange[i][1]);
i++;
}
minNum++;
pre = last;
if (i < n && viewRange[i][0] > pre)
{
minNum = -1;
break;
}
if (last >= L)
{
break;
}
}
if (last < L)
std::cout << -1;
else
std::cout << minNum;
}
[未知] ReLu激活函数在0处的导数是多少?ReLu在零点不可导,那么在反向传播中怎么处理?
可以用 log(1+ex)来近似 ;tf 好像认为导数一般是0,导数应该是0和1两条不连续的线段。为简便,默认只取0。我也见过取均值的 就是0.5