zoukankan      html  css  js  c++  java
  • AtCoder Regular Contest 113 题解(待补)

    传送门:https://atcoder.jp/contests/arc113

    A

    直接暴力。

    #pragma GCC optimize("O3")
    #include<bits/stdc++.h>
    using namespace std;
    #define SET0(a) memset(a,0,sizeof(a))
    #define FOR(i,a,b) for(int i=(a);i<=(b);i++)
    #define DWN(i,a,b) for(int i=(a);i>=(b);i--)
    #define INF 0x3f3f3f3f
    typedef long long ll;
    
    int main(){
    	int k; cin>>k;
    	
    	ll cnt=0;
    	FOR(i,1,k){
    		FOR(j,1,k){
    			if(i*j>k) break;
    			FOR(u,1,k){
    				if(i*j*u<=k) cnt++;
    				else break;
    			}
    		}
    	}
    	cout<<cnt<<endl;
        return 0;
    }
    

    B

    一道扩展欧拉定理的裸题。

    #pragma GCC optimize("O3")
    #include<bits/stdc++.h>
    using namespace std;
    #define SET0(a) memset(a,0,sizeof(a))
    #define FOR(i,a,b) for(int i=(a);i<=(b);i++)
    #define DWN(i,a,b) for(int i=(a);i>=(b);i--)
    #define INF 0x3f3f3f3f
    typedef long long ll;
    
    ll fpow(ll x,ll p,ll mod){
    	ll res=1;
    	for(;p;p>>=1,x=x*x%mod)
    		if(p&1) res=res*x%mod;
    	return res%mod;
    }
    int main(){
    	ll a,b,c; cin>>a>>b>>c;
    	if(b==1 || (b==2 && c==1) || (b==3 && c==1)){
    		cout<<fpow(a,b,10)<<endl;
    		return 0;
    	}
    	
    	ll p=fpow(b,c,4)+4;
    	cout<<fpow(a,p,10)<<endl;
        return 0;
    }
    

    C

    模拟+双指针

    #pragma GCC optimize("O3")
    #include<bits/stdc++.h>
    using namespace std;
    #define SET0(a) memset(a,0,sizeof(a))
    #define FOR(i,a,b) for(int i=(a);i<=(b);i++)
    #define DWN(i,a,b) for(int i=(a);i>=(b);i--)
    #define INF 0x3f3f3f3f
    typedef long long ll;
    
    const int N=2e5+5;
    char ch[N];
    int dic[27];
    int main(){
    	cin>>ch+1;
    	int len=strlen(ch+1);
    	ch[len+1]='#';
    	int s,t; s=t=len;
    	ll cnt=0;
    	int tmp=len+1;
    	while(t){
    		while(ch[t-1]!=ch[s] && t) {
    			t--;
    			dic[ch[s]-'a']++;
    			s=t;
    		}
    		while(ch[t-1]==ch[s] && t) t--;
    		if(s!=t) {
    			cnt+=tmp-1-s;
    			cnt-=dic[ch[s]-'a'];
    			if(ch[s]!=ch[tmp]) cnt+=len-tmp+1;
    			memset(dic,0,sizeof dic);
    		}
    		tmp=t;
    		if(t) t--,s=t;
    	}
    	cout<<cnt<<endl;
        return 0;
    }
    
  • 相关阅读:
    unity5, Configurable Joint: Anchor, Connected Anchor, Auto Configure Connected Anchor
    unity physics joint
    unity camera aspect
    spineRuntTime for cocos2dx v3,attack播完后回到idle
    spineRunTime for cocos2dx v3 中动画播完删除animation
    spine 2.1.27 Pro 叠加方式(Blending)
    unity5 静态和动态cubmap
    INFINITY的一个坑
    Linux下配置MySQL需要注意的几点
    更换网页tab标题图标
  • 原文地址:https://www.cnblogs.com/Tenshi/p/14427834.html
Copyright © 2011-2022 走看看