首页 > 其他分享 >ACM日常训练日记——8.2

ACM日常训练日记——8.2

时间:2024-08-06 09:17:29浏览次数:14  
标签:8.2 int cin ACM else long result 日记 minv

  • 小训练
  1. Kevin and Permutation
    题解很好不多说
#include<bits/stdc++.h>
using namespace std;
int T,n;
int main(){
	cin>>T;
	while(T--){
		cin>>n;
		for(int i=1;i<=n/2;i++) cout<<i+n/2<<' '<<i<<' ';
		if(n%2==1) cout<<n<<' ';
		cout<<endl;
	}
}

总结就是遇到这类题自己找规律分析打表太弱了,不能专注认真去试,还是得多做多去冷静思考打表,去试

  • codeforces(div2)
  1. C. Even Positions
    一个简单的栈模拟一下就可以了,我当时也也想到了这道题的规律,但是没有敢交
//
#include <bits/stdc++.h>
using namespace std;

#define  int long long

const int MOD = 1e9 + 7;
int n;
char ans[300010];

vector<char> v1,v2;
int qpow(int a, int b, int m) {
    int result = 1;
    a %= m;
    while (b > 0) {
        if (b & 1) {
            result = (result * a) % m;
        }
        a = (a * a) % m;
        b >>= 1;
    }
    return result;
}

int32_t main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int t;
    cin>>t;
    while(t--){
        int ans=0;
        stack<int>sta;
        stack<int>s1;
        stack<int>s2;
        int n;
        cin>>n;
        for (int i = 0; i < n; ++i) {
            char c;
            cin>>c;
            if(c=='_'){
                if(!s2.empty()){
                    ans+=i-s2.top();
                    s2.pop();
                }else
                    sta.push(i);
            }else if(c==')'){
                if(!sta.empty()){
                    ans+=i-sta.top();
                    sta.pop();
                }else
                    s1.push(i);
            }else{
                s2.push(i);
            }
        }
        cout<<ans<<'\n';
    }
}

  1. D. Maximize the Root
    讲的很好
#include <bits/stdc++.h>
using namespace std;

#define  int long long

const int MOD = 1e9 + 7;
char ans[300010];
int t,n;
long long a[200010];
vector<int> g[200010];

vector<char> v1,v2;
int qpow(int a, int b, int m) {
    int result = 1;
    a %= m;
    while (b > 0) {
        if (b & 1) {
            result = (result * a) % m;
        }
        a = (a * a) % m;
        b >>= 1;
    }
    return result;
}

inline void solve() {
    int n; cin >> n;
    vector<int> a(n + 1);
    for (int i = 1; i <= n; i ++ ) cin >> a[i];
    vector<vector<int>> e(n + 1);
    for (int i = 2; i <= n; i ++ ) {
        int x; cin >> x;
        e[x].push_back(i);
    }
    function<void(int)> dfs = [&](int u) {
        for (int v : e[u]) dfs(v);
        if (e[u].empty()) return;
        if (u == 1) {
            int minv = 1e9 + 7;
            for (int v : e[1]) minv = min(minv, a[v]);
            a[1] += minv;
        }else {
            int minv = 1e9 + 7;
            for (int v : e[u]) minv = min(minv, a[v]);
            if (minv > a[u]) a[u] = (a[u] + minv) / 2;
            else a[u] = minv;
        }
    };
    dfs(1);
    cout << a[1] << endl;
    return;
}


int32_t main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cin>>t;
    while(t--){
       solve();
    }
    return 0;
}

标签:8.2,int,cin,ACM,else,long,result,日记,minv
From: https://www.cnblogs.com/dontian/p/18338324

相关文章

  • 8.2 PTA练习
    6-7统计某类完全平方数 本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。函数接口定义:intIsTheNumber(constintN);其中N是用户传入的参数。如果N满足条件,则该函数必须返回1,否则返回0。裁判测试程序样例:#incl......
  • 8.2 模拟赛
    总结今天的暴力打的还行T1的卷积优化dp是真不会。T2正解如果花时间是好想的,赛时在做t3。t3会了性质,但是不会维护。t4乱搞。题解monster暴力dp显然,考虑优化。设\(f_{i,j}\)表示选了\(i\)个非负整数,和为\(j\)的最大的\(\sums\),直接做背包是\(\mathcalO......
  • ddns-go手动安装,配置acme获取证书,nginx反代
    ddns-go的手动安装并使用nginx反代一、下载最新ddngo软件包wgethttps://github.com/jeessy2/ddns-go/releases/download/v6.6.7/ddns-go_6.6.7_linux_x86_64.tar.gz二、手动安装ddnsgo1.创建ddnsgo目录sudomkdir/opt/ddnsgo#创建运行ddnsgo的用户sudouseradd-r-s/......
  • 【日记】这个人居然一个小时就学会了自行车……(2627 字)
    正文每次周末有事,都没时间写。这周末跑斯那里去,只有一个目的:让他把自行车学会。而这个目的很快就达成了,让人非常意外。连我都没有想到,他居然一个小时就能学会。周五晚上坐火车过去,他让我直接到超市。单位给他发了500块钱的超市购物卡,作为生日礼物。那天晚上......
  • Android 之 PopUpWindow 控件的使用(努力z的日记)
    Gif示例:上面的示例是模仿一些App设置的弹窗,为了实现上面gif中的效果,可以通过PopUpWindow实现。以下是实现过程。(欢迎大佬指证o.o)1:创建PopUpWindow动画(anim)    这个anim是在开发中扮演很重要的一环,因为好看o.o,所以麻烦。浅入浅出是我们比较常见的。(因为周师傅只会......
  • 2024.7.29至2024.8.2周总结
    本周学习任务清单DP优化:单调队列优化、矩阵优化、前缀和优化、线段树优化等ACM模拟赛图论:最小生成树、最短路、欧拉图、强连通分量、缩点、割点、双联通分量。总结本周学习任务不算太大,ACM也让我认识到了如今题目的考察范围和难度,DP优化的基础是暴力DP,我认为这一块是我的......
  • 8.2日CSP-J初赛内容总结
    8.2日CSP-J初赛内容总结Adobe:PS,PR,......Reader微软:Onedrive(存文件),Excel(表格),Word(文字编辑),Onenote(笔记),PowerPoint(PPT)位号从正数部分最低位开始编号,0到更大的数字。位号从左往右的小数部分从\(-1\)开始编号,编号变小基数:进制的进位数字位权:基数的位号次幂......
  • GitHub每日最火火火项目(8.2)
    1. 项目名称:opendatalab/MinerU项目介绍:MinerU是一个一站式开源高质量数据提取工具,它支持PDF、网页、多格式电子书的提取。该工具旨在为用户提供便捷的数据提取解决方案,使用户能够轻松地从各种来源获取所需的数据。无论是从文档中提取关键信息,还是从网页中抓取特定内容,Mi......
  • 【2024暑#108】ACM暑期第三次测验(个人赛)
    A-猫抓老鼠经典的逆序对问题,这里就不过多阐述了有递归和树状数组两种写法,自行百度即可B-字符变换查看\((S[i]-T[i])\%26\)是否相同即可#include<bits/stdc++.h>usingnamespacestd;intmain(){stringS,T;cin>>S>>T;set<int>st;for(inti......
  • Day 8.2 NOIP2024 模拟赛 总结
    Day8.2NOIP模拟赛总结T1T1赛时打表输出发现了等差数列的性质(好像不需要打表也能知道),然后我码完T2过后剩不到2个小时了,于是连T3T4暴力都没码就过来推了,但也没推出来,时间倒是耽误了不少,剩一个小时的时候去开始去码后面的暴力了。T2水题一道,做法,性质全给了。只不过比较玄学的......