[cf]Codeforces Round #546 (Div. 2)

solved 3

A(签到)

题意:

签到

#include<bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=1;i<=n;i++)
#define pb push_back
#define mp make_pair
#define LL long long
#define nd second
#define st first

#define pii pair<int , int> 

const int N = 2e2+7;

int n;

pii a[N];

int main(){
    cin>>n;
    rep(i,n){
        int l,r;
        cin>>l>>r;
        a[i]=mp(l,r);
    }
    int x;
    cin>>x;
    rep(i,n){
        if(a[i].nd>=x){
            cout<<n-i+1;
            return 0;
        } 
    }
} 
View Code

B(思维)

题意:

有线性排列的n个洞,开始时每个洞口有一块石头,每个洞口里有一个金币,当洞口没有石头时可以取出金币,开始时在第k个洞口。

1取出金币 2把当前洞口的一块石头扔到其他任意一个洞口 3移动一步 都视为一次操作。

求取出所有金币最少的操作数。

显然取完第一个洞口之后,所有的石头就可以扔到第一个洞口上,因此只需要移n+1块石头,取金币要n次操作,移动只需要遍历一遍所有洞口,根据初始位置可以直接算出。

#include<bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=1;i<=n;i++)
#define pb push_back
#define mp make_pair
#define LL long long
#define nd second
#define st first

#define pii pair<int , int> 

const int N = 2e2+7;

int n,k;

int main(){
    cin>>n>>k;
    int ans=n*2+1;
    ans+=min(n-1+k-1,n-k+n-1) ;
    
    cout<<ans; 
} 
View Code

C(思维)

题意:

给出矩阵A,B,可以无限次地转置任意一个A的子方阵,问A是否可以变换为B。

观察知方阵的转置等价于若干次交换副对角线上相邻的两个数,即左下和右上交换,也就是每条副对角线上的元素都是可以任意交换的,因此只需要判断A和B的每一条副对角线上是否含有完全相同的数即可。

 #include<bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=1;i<=n;i++)
#define pb push_back
#define mp make_pair
#define LL long long
#define nd second
#define st first

#define pii pair<int , int> 

const int N = 2e4+7;

vector<int> a[N];
vector<int> b[N];

int main(){
    int n,m;
    cin>>n>>m;
    rep(i,n)
    rep(j,m){
        int x;
        cin>>x;
        a[i+j].pb(x);
    }
    
    rep(i,n)
    rep(j,m){
        int x;
        cin>>x;
        b[i+j].pb(x);
    }
    
    for(int i=2;i<=n+m;i++){
        sort(a[i].begin(),a[i].end());
        sort(b[i].begin(),b[i].end());
        for(int j=0;j<a[i].size();j++)if(a[i][j]!=b[i][j]){
            cout<<"NO";
            return 0;
        }
    }
    cout<<"YES";
    
} 
View Code

猜你喜欢

转载自www.cnblogs.com/xutianshu/p/10519165.html