Sat, 26 Sep 2020 21:50:22 +0800

master
大蒟蒻 5 years ago
parent 1a2b2108bc
commit 1813fbcd38

@ -1 +0,0 @@
Noisy Shadow 59

@ -1,11 +1,11 @@
cmake_minimum_required(VERSION 3.0)
set(CMAKE_CXX_STANDARD 17)
if(MSVC)
add_compile_options("/Zc:__cplusplus")
endif()
include_directories("C:\\Programs\\GCC\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include\\c++\\x86_64-w64-mingw32")
add_executable(P01 P01.cpp)
add_executable(P02 P02.cpp)
add_executable(P03 P03.cpp)
add_executable(P04 P04.cpp)
cmake_minimum_required(VERSION 3.0)
set(CMAKE_CXX_STANDARD 17)
if(MSVC)
add_compile_options("/Zc:__cplusplus")
endif()
include_directories("C:\\Programs\\GCC\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include\\c++\\x86_64-w64-mingw32")
add_executable(P01 P01.cpp)
add_executable(P02 P02.cpp)
add_executable(P03 P03.cpp)
add_executable(P04 P04.cpp)
add_executable(P05 P05.cpp)

@ -1,21 +1,21 @@
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 50;
int l[N], r[N];
int main()
{
int n;
scanf("%d", &n);
for (int i = 1; i <= n; i++)
scanf("%d%d", l + i, r + i);
int L = *min_element(l + 1, l + n + 1);
int R = *max_element(r + 1, r + n + 1);
int ans = -1;
for (int i = 1; i <= n; i++)
if (l[i] == L && r[i] == R)
ans = i;
printf("%d", ans);
return 0;
}
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 50;
int l[N], r[N];
int main()
{
int n;
scanf("%d", &n);
for (int i = 1; i <= n; i++)
scanf("%d%d", l + i, r + i);
int L = *min_element(l + 1, l + n + 1);
int R = *max_element(r + 1, r + n + 1);
int ans = -1;
for (int i = 1; i <= n; i++)
if (l[i] == L && r[i] == R)
ans = i;
printf("%d", ans);
return 0;
}

@ -1,22 +1,22 @@
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
const int N = 55;
int a1[N], a2[N], b[N], d[N];
int main()
{
int n;
scanf("%d", &n);
for (int i = 1; i < n; i++)
scanf("%d", a1 + i), a1[i] += a1[i - 1];
for (int i = 1; i < n; i++)
scanf("%d", a2 + i), a2[i] += a2[i - 1];
for (int i = 0; i < n; i++)
scanf("%d", b + i);
for (int i = 0; i < n; i++)
d[i] = a1[i] + b[i] + (a2[n - 1] - a2[i]);
sort(d, d + n);
printf("%d", d[0] + d[1]);
return 0;
}
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
const int N = 55;
int a1[N], a2[N], b[N], d[N];
int main()
{
int n;
scanf("%d", &n);
for (int i = 1; i < n; i++)
scanf("%d", a1 + i), a1[i] += a1[i - 1];
for (int i = 1; i < n; i++)
scanf("%d", a2 + i), a2[i] += a2[i - 1];
for (int i = 0; i < n; i++)
scanf("%d", b + i);
for (int i = 0; i < n; i++)
d[i] = a1[i] + b[i] + (a2[n - 1] - a2[i]);
sort(d, d + n);
printf("%d", d[0] + d[1]);
return 0;
}

@ -1,30 +1,30 @@
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
const int N = 1 << 20;
char buf[N];
int diff[N];
int calc(char a, char b)
{
if (a > b) swap(a, b);
return min(b - a, a + 26 - b);
}
int main()
{
int n, p;
scanf("%d%d%s", &n, &p, buf);
p--;
if (p >= (n >> 1)) p = n - p - 1, reverse(buf, buf + n);
for (int i = 0; i < (n >> 1); i++) diff[i] = calc(buf[i], buf[n - i - 1]);
int L = p, R = p;
for (int i = p; i >= 0; i--)
if (diff[i]) L = i;
for (int i = p; i < (n >> 1); i++)
if (diff[i]) R = i;
int base_ans = accumulate(diff + L, diff + R + 1, 0);
if (L == p) return printf("%d", base_ans + R - p), 0;
if (R == p) return printf("%d", base_ans + p - L), 0;
printf("%d", base_ans + R - L + min(R - p, p - L));
return 0;
}
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
const int N = 1 << 20;
char buf[N];
int diff[N];
int calc(char a, char b)
{
if (a > b) swap(a, b);
return min(b - a, a + 26 - b);
}
int main()
{
int n, p;
scanf("%d%d%s", &n, &p, buf);
p--;
if (p >= (n >> 1)) p = n - p - 1, reverse(buf, buf + n);
for (int i = 0; i < (n >> 1); i++) diff[i] = calc(buf[i], buf[n - i - 1]);
int L = p, R = p;
for (int i = p; i >= 0; i--)
if (diff[i]) L = i;
for (int i = p; i < (n >> 1); i++)
if (diff[i]) R = i;
int base_ans = accumulate(diff + L, diff + R + 1, 0);
if (L == p) return printf("%d", base_ans + R - p), 0;
if (R == p) return printf("%d", base_ans + p - L), 0;
printf("%d", base_ans + R - L + min(R - p, p - L));
return 0;
}

@ -1,21 +1,21 @@
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
const int N = 1 << 20;
char buf[N];
int main()
{
scanf("%s", buf);
int len = strlen(buf);
bool flag = false;
putchar(buf[0]);
for (int i = 1; i < len;)
if (memcmp(buf + i, "dot", 3) == 0 && i + 3 < len)
putchar('.'), i += 3;
else if (!flag && memcmp(buf + i, "at", 2) == 0 && i + 2 < len)
putchar('@'), i += 2, flag = true;
else
putchar(buf[i]), i++;
return 0;
}
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
const int N = 1 << 20;
char buf[N];
int main()
{
scanf("%s", buf);
int len = strlen(buf);
bool flag = false;
putchar(buf[0]);
for (int i = 1; i < len;)
if (memcmp(buf + i, "dot", 3) == 0 && i + 3 < len)
putchar('.'), i += 3;
else if (!flag && memcmp(buf + i, "at", 2) == 0 && i + 2 < len)
putchar('@'), i += 2, flag = true;
else
putchar(buf[i]), i++;
return 0;
}

@ -1,29 +1,29 @@
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
const int N = 1 << 10;
int w[N], b[N];
int p[N];
bool u[N];
int main()
{
int n, m;
scanf("%d%d", &n, &m);
for (int i = 1; i <= n; i++)
scanf("%d", w + i);
for (int i = 1; i <= m; i++)
scanf("%d", b + i);
memset(p, 0, sizeof(p));
long long ans = 0;
for (int i = 1; i <= m; i++)
{
memset(u, 0, sizeof(u));
for (int j = p[b[i]] + 1; j < i; j++)
if (!u[b[j]])
ans += w[b[j]], u[b[j]] = true;
p[b[i]] = i;
}
printf("%lld", ans);
return 0;
}
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
const int N = 1 << 10;
int w[N], b[N];
int p[N];
bool u[N];
int main()
{
int n, m;
scanf("%d%d", &n, &m);
for (int i = 1; i <= n; i++)
scanf("%d", w + i);
for (int i = 1; i <= m; i++)
scanf("%d", b + i);
memset(p, 0, sizeof(p));
long long ans = 0;
for (int i = 1; i <= m; i++)
{
memset(u, 0, sizeof(u));
for (int j = p[b[i]] + 1; j < i; j++)
if (!u[b[j]])
ans += w[b[j]], u[b[j]] = true;
p[b[i]] = i;
}
printf("%lld", ans);
return 0;
}

@ -1,15 +0,0 @@
```cpp
invT[1] = 1;
for (int i = 2; i < N; i++)
invT[i] = (mod - mod / i) * invT[mod % i] % mod;
```
$$
p=ax+b \\
ax+b \equiv 0 \pmod p\\
ab^{-1}+x^{-1} \equiv 0 \pmod p \\
x^{-1} \equiv -ab^{-1} \pmod p \\
x^{-1} \equiv -\left \lfloor \frac{p}{x} \right \rfloor (p\bmod x)^{-1} \pmod p \\
x^{-1} \equiv (p-p/x) (p\bmod x)^{-1} \pmod p \\
$$

@ -1,20 +0,0 @@
import java.io.PrintStream;
import java.math.BigInteger;
import java.util.Scanner;
import java.util.StringTokenizer;
class Main {
public static void main(String[] argv) {
String sp = System.getProperty("line.separator");
PrintStream cout = System.out;
try (Scanner cin = new Scanner(System.in)) {
int T = cin.nextInt();
for (int t = 1; t <= T; t++) {
BigInteger ba = cin.nextBigInteger(), bb = cin.nextBigInteger();
cout.printf("Case %d:%s%s + %s = %s%s", t, sp, ba, bb, ba.add(bb), sp);
if (t != T)
cout.println();
}
}
}
}

@ -1,11 +0,0 @@
from socket import *
from struct import *
while True:
st = input(">>> ")
s = socket(AF_INET, SOCK_STREAM)
s.connect(("127.0.0.1", 8888))
s.sendall(pack("!i", len(st.encode())))
s.sendall(st.encode())
print(s.recv(len(st)).decode())
s.close()

@ -1,18 +0,0 @@
from socket import *
from struct import *
from threading import *
s = socket(AF_INET, SOCK_STREAM)
s.bind(('', 8888))
s.listen(100)
def proc(cs):
msglen = unpack("!i", cs.recv(4))[0]
msg = cs.recv(msglen)
cs.sendall(msg.decode().upper().encode())
while True:
(cs, addr) = s.accept()
# Thread(None, proc, args=(cs, )).start()
proc(cs)

Binary file not shown.

@ -1,25 +0,0 @@
#include <bits/stdc++.h>
using namespace std;
uint8_t encode[48] = {
0x96, 0x62, 0x53, 0x43, 0x6D, 0xF2, 0x8F, 0xBC,
0x16, 0xEE, 0x30, 0x05, 0x78, 0x00, 0x01, 0x52,
0xEC, 0x08, 0x5F, 0x93, 0xEA, 0xB5, 0xC0, 0x4D,
0x50, 0xF4, 0x53, 0xD8, 0xAF, 0x90, 0x2B, 0x34,
0x81, 0x36, 0x2C, 0xAA, 0xBC, 0x0E, 0x25, 0x8B,
0xE4, 0x8A, 0xC6, 0xA2, 0x81, 0x9F, 0x75, 0x55};
int main()
{
for (int j = 0; j < 6; j++)
{
uint64_t x = *(uint64_t *)&encode[j << 3];
for (int i = 0; i < 64; i++)
if (x & 1)
x = (x ^ 0xB0004B7679FA26B3uLL) >> 1 | (1ll << 63);
else
x >>= 1;
char *pt = (char *)&x;
for (int i = 0; i < 8; i++)
putchar(pt[i]);
}
return 0;
}

@ -1,71 +0,0 @@
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
#define CRP(t, x) const t &x
#define OPX(op, t, x) operator op(CRP(t, x))
#define OPL(t, x) bool OPX(<, t, x) const
#define FIL(x, v) memset(x, v, sizeof(x))
#define CLR(x) FIL(x, 0)
#define NE1(x) FIL(x, -1)
#define INF(x) FIL(x, 0x3f)
#ifndef _DEBUG
#define _DEBUG 0
#endif // !_DEBUG
#define IFD if (_DEBUG)
typedef int64_t ll, i64;
typedef uint64_t ull, u64;
template <typename T>
using enable_if_arithmetic = typename enable_if<is_arithmetic<T>::value>::type;
template <typename T>
using enable_if_integral = typename enable_if<is_integral<T>::value>::type;
inline char getchar(int)
{
static char buf[64 << 20], *S = buf, *T = buf;
if (S == T) T = fread(S = buf, 1, 64 << 20, stdin) + S;
return S == T ? EOF : *S++;
}
template <typename T, typename = enable_if_integral<T>>
inline void read(T &x)
{
int ch = x = 0, f = 1;
while (!isdigit(ch = getchar()))
if (ch == '-') f = -1;
for (; isdigit(ch); ch = getchar()) x = x * 10 + ch - '0';
x *= f;
}
template <typename T, typename... Args, typename = enable_if_integral<T>>
inline void read(T &x, Args &... args) { read(x), read(args...); }
ll gcd(ll a, ll b) { return b == 0 ? a : gcd(b, a % b); }
ll fpow(ll a, ll b, ll m)
{
ll r = 1;
for (; b; b >>= 1, a = a * a % m)
if (b & 1) r = r * a % m;
return r;
}
constexpr double eps = 1e-8;
inline int sgn(double x) { return x > eps ? 1 : x < -eps ? -1 : 0; }
const int N = 2e6 + 50;
char strs[6][N];
char *ptrs[6];
char harbin[] = "harbin";
int main()
{
int T, n, k;
read(T);
while (T--)
{
for (int i = 0; i < 6; i++) scanf("%s", ptrs[i] = strs[i]);
bool flag = false;
do
{
bool flag2 = true;
for (int i = 0; i < 6 && flag2; i++)
flag2 = flag2 && (strchr(ptrs[i], harbin[i]) != NULL);
flag = flag || flag2;
} while (next_permutation(ptrs, ptrs + 6));
puts(flag ? "Yes" : "No");
}
return 0;
}

@ -1,124 +0,0 @@
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/hash_policy.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace std;
#define CRP(t, x) const t &x
#define OPX(op, t, x) operator op(CRP(t, x))
#define OPL(t, x) bool OPX(<, t, x) const
#define FIL(x, v) memset(x, v, sizeof(x))
#define CLR(x) FIL(x, 0)
#define NE1(x) FIL(x, -1)
#define INF(x) FIL(x, 0x3f)
#ifndef _DEBUG
#define _DEBUG 0
#endif // !_DEBUG
#define IFD if (_DEBUG)
typedef int64_t ll, i64;
typedef uint64_t ull, u64;
template <typename T>
using enable_if_arithmetic = typename enable_if<is_arithmetic<T>::value>::type;
template <typename T>
using enable_if_integral = typename enable_if<is_integral<T>::value>::type;
inline char getchar(int)
{
static char buf[64 << 20], *S = buf, *T = buf;
if (S == T) T = fread(S = buf, 1, 64 << 20, stdin) + S;
return S == T ? EOF : *S++;
}
template <typename T, typename = enable_if_integral<T>>
inline void read(T &x)
{
int ch = x = 0, f = 1;
while (!isdigit(ch = getchar()))
if (ch == '-') f = -1;
for (; isdigit(ch); ch = getchar()) x = x * 10 + ch - '0';
x *= f;
}
template <typename T, typename... Args, typename = enable_if_integral<T>>
inline void read(T &x, Args &... args) { read(x), read(args...); }
ll gcd(ll a, ll b) { return b == 0 ? a : gcd(b, a % b); }
ll fpow(ll a, ll b, ll m)
{
ll r = 1;
for (; b; b >>= 1, a = a * a % m)
if (b & 1) r = r * a % m;
return r;
}
constexpr double eps = 1e-8;
inline int sgn(double x) { return x > eps ? 1 : x < -eps ? -1 : 0; }
const int N = 1e6 + 50;
//__gnu_pbds::gp_hash_table<ll, ll> mps[N];
//map<ll, ll> mps[N];
//__gnu_pbds::tree<ll, ll, less<ll>, __gnu_pbds::ov_tree_tag> mps[N];
vector<ll> mps[N];
pair<ll, ll> ch[N];
ll cnt[N];
int ops[N];
int main()
{
int T, n, op;
read(T);
while (T--)
{
read(n);
for (int i = 1; i <= n; i++)
{
auto &&curMap = mps[i];
cnt[i] = 0;
read(op);
ops[i] = op;
if (op == 1)
{
curMap.clear();
int k, x;
read(k);
while (k--) read(x), curMap.push_back(x);
}
if (op == 2)
{
int x, y;
read(x, y);
ch[i] = {x, y};
}
}
cnt[n] = 1;
for (int i = n; i; i--)
if (ops[i] == 2) cnt[ch[i].first] += cnt[i], cnt[ch[i].second] += cnt[i];
/*map<ll, ll> endMap;
for (int i = n; i; i--)
if (ops[i] == 1)
for (auto &&p : mps[i])
endMap[p] += cnt[i];
pair<ll, ll> mx = {0, 0};
ll len = 0, ans = 0;
for (auto &&p : endMap) mx = max(mx, {p.second, p.first}), len += p.second;*/
ll mx = 0, mxcnt = 0, len = 0;
for (int i = 1; i <= n; i++)
if (ops[i] == 1 && cnt[i])
for (auto j : mps[i])
{
if (mx == 0)
mx = j, mxcnt += cnt[i];
else if (mx == j)
mxcnt += cnt[i];
else
{
if (cnt[i] > mxcnt)
mx = j, mxcnt = cnt[i] - mxcnt;
else
mxcnt -= cnt[i];
}
len += cnt[i];
}
ll tot = 0;
for (int i = 1; i <= n; i++)
if (ops[i] == 1 && cnt[i])
for (auto j : mps[i])
if (j == mx) tot += cnt[i];
printf("%lld\n", (tot << 1) <= len ? len : (len - tot) << 1);
}
return 0;
}

@ -1,106 +0,0 @@
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
#define CRP(t, x) const t &x
#define OPX(op, t, x) operator op(CRP(t, x))
#define OPL(t, x) bool OPX(<, t, x) const
#define FIL(x, v) memset(x, v, sizeof(x))
#define CLR(x) FIL(x, 0)
#define NE1(x) FIL(x, -1)
#define INF(x) FIL(x, 0x3f)
#ifndef _DEBUG
#define _DEBUG 0
#endif // !_DEBUG
#define IFD if (_DEBUG)
typedef long long ll, i64;
constexpr double eps = 1e-8;
int sgn(double x)
{
if (x > eps)
return 1;
if (x < -eps)
return -1;
return 0;
}
template <typename T>
using enable_if_arithmetic = typename enable_if<is_arithmetic<T>::value>::type;
template <typename T>
using enable_if_integral = typename enable_if<is_integral<T>::value>::type;
template <typename T, typename = enable_if_arithmetic<T>>
struct Point
{
T x, y;
Point OPX(-, Point, rhs) const { return {x - rhs.x, y - rhs.y}; }
T OPX(*, Point, rhs) const { return x * rhs.x + y * rhs.y; }
T OPX (^, Point, rhs) const { return x * rhs.y - y * rhs.x; }
T len2() const { return x * x + y * y; }
double len() const { return sqrt(len2()); }
};
template <typename T>
struct Line
{
Point<T> s, e;
T len2() const { return (s - e).len2(); }
double len() const { return (s - e).len(); }
bool contains(CRP(Point<T>, p)) const { return sgn((s - p) ^ (e - p)) == 0 && sgn((s - p) * (e - p)) <= 0; }
};
#define Point Point<double>
#define Line Line<double>
double area(CRP(Point, p1), CRP(Point, p2), CRP(Point, p3))
{
return abs((p3 - p1) ^ (p2 - p1));
}
int main2()
{
Point p[3], e;
while (~scanf("%lf%lf%lf%lf%lf%lf%lf%lf", &p[0].x, &p[0].y, &p[1].x, &p[1].y, &p[2].x, &p[2].y, &e.x, &e.y))
{
Line ls[3] = {{p[1], p[2]}, {p[0], p[2]}, {p[0], p[1]}};
bool flag = true;
for (int i = 0; i < 3 && flag; i++)
if (ls[i].contains(e))
{
int l = (i + 2) % 3, r = (i + 1) % 3;
int near = (e - p[l]).len2() < (e - p[r]).len2() ? l : r;
int other = l + r - near;
double len = ls[i].len() * ls[near].len() / 2 / (e - p[other]).len();
double fulllen = ls[near].len();
Point dif = p[i] - p[other];
printf("%.12lf %.12lf\n", p[other].x + dif.x * len / fulllen, p[other].y + dif.y * len / fulllen);
if (sgn(area(p[other], e, {p[other].x + dif.x * len / fulllen, p[other].y + dif.y * len / fulllen}) * 2 - area(p[0], p[1], p[2])))
return -1;
flag = false;
}
if (flag)
puts("-1");
}
return 0;
}
int main()
{
Point p[3], e;
while (~scanf("%lf%lf%lf%lf%lf%lf%lf%lf", &p[0].x, &p[0].y, &p[1].x, &p[1].y, &p[2].x, &p[2].y, &e.x, &e.y))
{
Line ls[3] = {{p[1], p[2]}, {p[0], p[2]}, {p[0], p[1]}};
bool flag = true;
for (int i = 0; i < 3 && flag; i++)
if (ls[i].contains(e))
{
int l = (i + 2) % 3, r = (i + 1) % 3;
int near = (e - p[l]).len2() < (e - p[r]).len2() ? l : r;
int other = l + r - near;
double len = sqrt(ls[i].len2() * ls[near].len2() / 4 / (e - p[other]).len2());
double fulllen = ls[near].len();
Point dif = p[i] - p[other];
printf("%.12lf %.12lf\n", p[other].x + dif.x * len / fulllen, p[other].y + dif.y * len / fulllen);
if (sgn(area(p[other], e, {p[other].x + dif.x * len / fulllen, p[other].y + dif.y * len / fulllen}) * 2 - area(p[0], p[1], p[2])))
return -1;
flag = false;
}
if (flag)
puts("-1");
}
return 0;
}

@ -1,61 +0,0 @@
#define _CRT_SECURE_NO_WARNINGS
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
#include <bits/stdc++.h>
using namespace std;
#define CRP(t, x) const t &x
#define OPX(op, t, x) operator op(CRP(t, x))
#define OPL(t, x) bool OPX(<, t, x) const
#define FIL(x, v) memset(x, v, sizeof(x))
#define CLR(x) FIL(x, 0)
#define NE1(x) FIL(x, -1)
#define INF(x) FIL(x, 0x3f)
#ifndef _DEBUG
#define _DEBUG 0
#endif // !_DEBUG
#define IFD if (_DEBUG)
typedef int64_t ll, i64;
typedef uint64_t ull, u64;
template <typename T>
using enable_if_arithmetic = typename enable_if<is_arithmetic<T>::value>::type;
template <typename T>
using enable_if_integral = typename enable_if<is_integral<T>::value>::type;
inline char getchar(int)
{
static char buf[64 << 20], *S = buf, *T = buf;
if (S == T) T = fread(S = buf, 1, 64 << 20, stdin) + S;
return S == T ? EOF : *S++;
}
template <typename T, typename = enable_if_integral<T>>
inline void read(T &x)
{
int ch = x = 0, f = 1;
while (!isdigit(ch = getchar()))
if (ch == '-') f = -1;
for (; isdigit(ch); ch = getchar()) x = x * 10 + ch - '0';
x *= f;
}
template <typename T, typename... Args, typename = enable_if_integral<T>>
inline void read(T &x, Args &... args) { read(x), read(args...); }
ll gcd(ll a, ll b) { return b == 0 ? a : gcd(b, a % b); }
ll fpow(ll a, ll b, ll m)
{
ll r = 1;
for (; b; b >>= 1, a = a * a % m)
if (b & 1) r = r * a % m;
return r;
}
constexpr double eps = 1e-8;
inline int sgn(double x) { return x > eps ? 1 : x < -eps ? -1 : 0; }
const int N = 1e4 + 50;
int minfac[N], primes[N], pcnt;
int main()
{
for (ll i = 2; i < N; i++)
{
if (minfac[i] == 0)
minfac[i] = i, primes[pcnt++] = i;
for (int j = 0; j < pcnt && primes[j] <= minfac[i] && i * primes[j] < N; j++)
minfac[i * primes[j]] = primes[j];
}
return 0;
}

@ -1,49 +0,0 @@
{
"nbformat": 4,
"nbformat_minor": 2,
"metadata": {
"language_info": {
"name": "python",
"codemirror_mode": {
"name": "ipython",
"version": 3
}
},
"orig_nbformat": 2,
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"npconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": 3
},
"cells": [
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": "array([[0., 0., 0.],\n [0., 0., 0.],\n [0., 0., 0.],\n [0., 0., 0.],\n [0., 0., 0.]])"
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.zeros((5,3))"
]
}
]
}

@ -1,19 +0,0 @@
template <size_t N, size_t M = N>
struct Graph
{
// Basic
struct Edge
{
int nxt, to, len;
};
int adj[N], ecnt;
Edge E[M];
void addEdge(int f, int t, int l)
{
E[++ecnt] = {adj[f], t, l};
adj[f] = ecnt;
}
// Dijkstra
// ISAP
};
Loading…
Cancel
Save