首页 > 其他分享 >AtCoder Beginner Contest 343

AtCoder Beginner Contest 343

时间:2024-03-03 13:33:35浏览次数:32  
标签:std AtCoder cout Beginner int long mp 343 define

AtCoder Beginner Contest 343

比赛链接

A - Wrong Answer

思路

简单的模拟,事实上我们需要注意一下当a和b都为0的情况

Code

#include<bits/stdc++.h>
using namespace std;
#define int long long 

void solve(){
	int a,b;
	cin>>a>>b;
	int ans=a+b;
	// cout<<a+b-1<<endl;
	if(ans==0){
		cout<<ans+1<<endl;
		return ;
	}
	else{
		cout<<ans-1<<endl;
		
	}
	return ;
	
}

signed main(){
	int t=1;
	while(t--) solve();
	return 0;

}

B - Adjacency Matrix

思路

简单的模拟,我写的稍微复杂了一点,如果你跟我写的一样,最后应该也是需要去掉重复元素的,但我总感觉貌似可以直接pass掉重复元素

Code

#include<bits/stdc++.h>
using namespace std;
#define int long long 
#define all(x) x.begin()+1,x.end()

const int N=110;
int a[N][N];
bool st[N][N];
void solve(){
	int n;
	cin>>n;
	// std::map<int, int
	std::vector<int> g[N];
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			cin>>a[i][j];
			if(a[i][j]){
				// st[i][j]=false;i
				g[i].push_back(j);
				g[j].push_back(i);
			}
		}
	}

	for(int i=1;i<=n;i++){
		sort(g[i].begin(),g[i].end());
		g[i].erase(unique(g[i].begin(),g[i].end()),g[i].end());
		
	}
	for(int i=1;i<=n;i++){
		for(auto x:g[i]){
			cout<<x<<" ";
		}
		cout<<endl;
	}
	return ;

}


signed main(){
	int t=1;
	while(t--) solve();
	return 0;

}

C - 343

思路

虽然数据有点大,但是开long long还是可以过的,这里我们只需要枚举i * i * i<=n就可以,最大也就是1e6吧,所以一遍循环是可以解决的

Code

#include<bits/stdc++.h>
using namespace std;
#define int long long 
#define all(x) x.begin()+1,x.end()
#define debug(x) cout<<"# "<<x<<" "

void solve(){
	int n;
	cin>>n;
	int ans=0;
	for(int i=1;i*i*i<=n;i++){
		int x=i*i*i;
		string s=to_string(x);
		if(s==std::string(s.rbegin(),s.rend())){
			ans=x;
		}
	}
	cout<<ans<<endl;
	
	
}

signed main(){
	int t=1;
	while(t--) solve();
	return 0;

}

D - Diversity of Scores

思路

Code

#include <bits/stdc++.h>
using namespace std;
#define int long long
#define all(x) x.begin()+1,x.end()
#define debug(x) cout<<"# "<<x<<" "<<endl
// const int N=2e5+10;

void solve(){
	int n, t1;
    std::cin >> n >> t1;
    
    std::map<int, int> mp;
    std::vector<int> s(n);
    mp[0] = n;
    while (t1--) {
        int a,b;
        cin>>a>>b;
        a--;
        if (--mp[s[a]] == 0) {
            mp.erase(s[a]);
        }
        s[a] += b;
        mp[s[a]]++;
        std::cout << mp.size() << "\n";
    }
	
}


signed main() {
	int t=1;
	while(t--) solve();
	return 0;
	

}

标签:std,AtCoder,cout,Beginner,int,long,mp,343,define
From: https://www.cnblogs.com/du463/p/18049899

相关文章

  • AtCoder Beginner Contest 343
    基本情况前四题秒了,但是都有不够优雅的地方F知道是线段树,但是写不出来,极其绝望C-343C-343(atcoder.jp)更简洁的回文判断MyCodeboolcheck_p(i64x){std::strings(std::to_string(x));intn=sz(s);for(inti=0;i<n/2;i++){if......
  • C - 343
    C-343https://atcoder.jp/contests/abc343/tasks/abc343_c 思路先找出最大三次方数,次数小于或者等于n,参考:在三次方根的可能范围内,使用二分查找法,定位最大的三次方根https://www.cnblogs.com/Ghost-Knight/p/17970849 从此最大的三次方根开始,向下枚举,枚举过程中对......
  • ABC343
    T1:WrongAnswer模拟代码实现a,b=map(int,input().split())c=a+bifc==0:print(1)else:print(0)T2:AdjacencyMatrix模拟代码实现n=int(input())a=[list(map(int,input().split()))foriinrange(n)]foriinrange(n):print(*[j+1f......
  • AtCoder Beginner Contest 343:起航
    AtCoderBeginnerContest343:起航2024/3/2/22:53有点儿晚了,简单总结一下。前4题都很基础,一点点小思维,其中C题边界又盲目追求刚刚好,WA了一次,总结经验,程序实际设计应该略微大于数据范围。EFG开始就做不动了,只剩了20多分钟,先通读然后看E题,E题读了半天发现大概是体积交并反......
  • AtCoder Beginner Contest 343
    B-AdjacencyMatrix难度:⭐题目大意给定一个无向图的邻接矩阵,问每个节点都和哪些节点相练;解题思路没啥好说的;神秘代码#include<bits/stdc++.h>#defineintlonglong#defineIOSios::sync_with_stdio(false);cin.tie(0);cout.tie(0);#defineendl'\n'......
  • AtCoder Beginner Contest 343(小白来了)
    A-WrongAnswer思路:给你两个数(A,B0~9)输出非A+B(0~9)解法:许多(A+B)^1等等Code:#include<iostream>usingnamespacestd;intmain(){intA,B;cin>>A>>B;cout<<!(A+B);return0;}B-AdjacencyMatrix思路......
  • AtCoder Beginner Contest 342
    B-Whichisahead?难度:⭐题目大意给定n个人的位置顺序,现有m次询问,给出a,b两个人,问谁在前面;解题思路模拟就行;神秘代码#include<bits/stdc++.h>#defineintlonglong#defineIOSios::sync_with_stdio(false);cin.tie(0);cout.tie(0);#defineendl......
  • AtCoder DP Contest vp 记录
    题单。A从\(i-1\)与\(i-2\)转移即可。#include<bits/stdc++.h>usingnamespacestd;intn;inth[100031];intdp[100031];intmain(){ cin>>n; for(inti=1;i<=n;i++)cin>>h[i]; memset(dp,0x3f,sizeof(dp)); dp[1]=0; for(inti=1;i<......
  • p3435-solution
    P3435Solutionlink画个图:显然四个黄色部分是相等的。也就是说,黄色部分是A的一个border。根据题目,周期的长度也就是Q的长度,也就是A的长度减去它的某个border的长度。现在要求这个最大,由于A的长度固定,要求的也就是A的最小border长度。根据KMP求出来的nxt......
  • AtCoder Regular Contest 172
    Preface开学了小溜一下之前没打的ARC,结果这场后面没有计数改成数论了又给我创飞了这场的DE都太玄学了,属于是自己想半天一点屌思路没有然后看一眼题解就顿悟的类型总结就是菜得发昏A-Chocolate挺有意思的签到题考虑从大到小依次切,对于一个原来\(H'\timesW'\)的块,为了尽量......