mathjax公式常用语法

mathjax公式常用语法

希腊字母

显示 命令 显示 命令
\alpha \beta
\gamma \delta
\epsilon \zeta
\eta \theta
\iota \kappa
\lambda \mu
\nu \xi
\pi \rho
\sigma \tau
\upsilon \phi
\chi \psi
\omega

ClearDewy大约 3 分钟
使用VSCode运行“Hello World”
  • 使用VSCode运行“Hello World”

    注意:计算机用户名不要是中文!!!计算机用户名不要是中文!!!计算机用户名不要是中文!!! 文件路径最好也不要有中文

    如果是不理解的地方建议照做

    1. 安装VSCode

    进入VSCode官网,点击下载安装程序,然后安装;

    88c9f344ad1645e587c2a5376044ad1e

    2. 下载插件和MinGW

    a. 打开VSCode应用,下载Chinese,c++,Code Runner,Competitive Programming Helper (cph)

    12315

    b. 下载Environment压缩文件并解压,得到Code和MinGW两个文件

    将MinGW文件放在你觉得凉快的地方(bushi,例如D盘下新建Environment文件夹

    2

    配置环境变量:

    右键“我的电脑”-->“属性”-->”高级系统设置“-->”环境变量“

    3

    4

    3. 运行程序

    用VSCode打开解压出来的Code文件,新建.cpp文件,就可以开始愉快的编程啦!

    5

    ”1“处右键新建文件,加上”.cpp“后缀

    ”2“.处右击RUN CODE运行程序,或者点击”3“处运行

    ”4“处为输出结果


ClearDewy大约 1 分钟
找零钱

找零钱

背景

  在某天下午cbl叫我看一个题,[C. 找零问题(再次加强版)](C. 找零问题(再次加强版) - 2022小学期——Day03 - 比赛 - XJTUOJ (xjtuicpc.com)),浅浅写了一下,不出意外的WA了。随后凯爹的代码就来了,我看了一下,没怎么看懂,我又觉得我的思路没问题,于是我就开启了自己造数据,用凯爹的代码来找自己代码的问题,最后找出来了。但是经历了前一天晚上那场痛苦的cf,于是乎我暴躁起来了,看着凯爹空间复杂度,我就开启了自己出题之旅……


ClearDewy大约 3 分钟
杭电杯第一场

杭电杯第一场

个人题解,欢迎指正

P1002

题目大意:

给定网格大小,起点和终点,求到达终点的最小摧毁墙的数量

思路:

由于数据范围较小,我们可以枚举剩余的墙然后再跑,时间复杂度


ClearDewy大约 6 分钟
杭电杯第七场

杭电杯第七场

个人题解,欢迎指正

P1003

思路:

​ 由于是一颗无根树,我们直接枚举脖子节点,然后从脖子节点的儿子节点中选出四个符合条件的子树作为头,左右手和躯干(包括两个脚)。现在的问题是如何确定手和和躯干,直接枚举的话复杂度为及以上,加上枚举脖子……


ClearDewy大约 3 分钟
杭电杯第三场

杭电杯第三场

个人题解,欢迎指正

题目变得好难,我也一直在推A题,还没推出来,最后一个多小时来看P1009,还好写出来了

P1003

思路:

签到题

Code:

#include<bits/stdc++.h>

using namespace std;

typedef long long ll;
typedef pair<int,int> pii;

#define IOS ios::sync_with_stdio(false),cin.tie(nullptr),cout.tie(nullptr)
#define lowbit(x)   ((x)&(-x))
#define fi first
#define se second
#define pb push_back
#define cf(_) int _;cin >> _;while(_--)

template <typename T> bool chkMax(T &x, T y) { return (y > x) ? x = y, 1 : 0; }
template <typename T> bool chkMin(T &x, T y) { return (y < x) ? x = y, 1 : 0; }

template <typename T> void inline read(T &x) {
    int f = 1; x = 0; char c = getchar();
    while (c < '0' || c > '9') { if (c == '-') f = -1; c = getchar(); }
    while (c <= '9' && c >= '0') x = (x << 1) + (x << 3) + (c ^ 48), c = getchar();
    x *= f;
}

int main()
{
    
    int T;
    cin >> T;
    getchar();
    while(T--)
    {
        
        string s;

        getline(cin,s);
        string ans;
        bool flag = false;
        // cout << s << endl;
        for(int i = 0;i < s.size();i++)
        {
            if(!i) ans.pb(s[i]);
            else
            {
                // cout << s[i] ;
                if(s[i] == ' ') {
                    flag = true;
                    continue;
                }
                if(flag)
                {
                    // cout << s[i];
                    ans.pb(s[i]);
                    flag = false;
                }
            } 
        }
        for(int i = 0;i < ans.size();i++)
        {
            cout << char(ans[i] - 32);
        }
        cout << endl;
    }
    return 0;
}

ClearDewy大约 2 分钟
杭电杯第九场

杭电杯第九场

个人题解,欢迎指正

P1007

DP,本人不会

Code:

#include <bits/stdc++.h>
#define ll long long
#define endl '\n'
using namespace std;

const int mod=998244353;
ll n,k,r;
int a[5010];
int dp[5010][5010];

void solve() {
    cin>>n>>k>>r;
    for(int i=1;i<=n;i++) cin>>a[i];
    memset(dp,0,sizeof(dp));
    dp[1][1]=1;
    for(int i=2;i<=n;i++) {
        ll p=upper_bound(a+1,a+n+1,a[i]-r)-a-1;
        for(int j=1;j<=i;j++){
            if(j==i) {
                dp[i][j]=dp[i-1][j-1];
            }
            else if(j==1) {
                ll p1=p;
                if(i-1-j>=0)
                   p1=p-(i-1-j);
                dp[i][j]=(p1*dp[i-1][j])%mod;
            }
            else {
                ll p1=p;
                if(i-1-j>=0)
                p1=p-(i-1-j);
                dp[i][j]=(dp[i-1][j-1]+(p1*dp[i-1][j])%mod)%mod;
            }
        }
    }
    cout<<dp[n][k]<<endl;
}

int main() {
    std::ios::sync_with_stdio(false);
    cin.tie(0); cout.tie(0);
    int T=1;
    cin>>T;
    while(T--) {
        solve();
    }
    return 0;
}

ClearDewy大约 2 分钟
杭电杯第二场

杭电杯第二场

个人题解,欢迎指正

P1002

思路:

签到题,将"std::make_tuple"去掉后输出后输出就行了

Code:

#include<bits/stdc++.h>
#define ll long long
#define ull unsigned long long
#define WA return 0;
#define ptn putchar('\n')
using namespace std;

inline ll read() {ll x = 0, z = 1;char c = getchar();while (!isdigit(c)) {if (c == '-')z = -1;c = getchar();}while (isdigit(c)) {x = (x << 1) + (x << 3) + (c ^ 48);c = getchar();}return z * x;}
inline void writ(ll x){if(x<0) {putchar('-');x=(~x)+1;}if(x>9)writ(x/10);putchar(x-x/10*10+48);}

string c="std::make_tuple";
string s;

void Qingtuan(){
    cin>>s;
    for (int i = 0; i < s.size(); i++)
    {
        if(i+15>s.size())break;
        if(string(s.begin()+i,s.begin()+i+15)==c){
            s.erase(s.begin()+i,s.begin()+i+15);
        }
    }
    cout<<s<<endl;
}



int main(){
    //cin.tie(nullptr)->sync_with_stdio(false);

    int T=read();while (T--)
    Qingtuan();
    WA
}

ClearDewy大约 5 分钟
2