2019 計蒜之道 初賽 第六場

A.html

https://nanti.jisuanke.com/t/39455ios

VIPKID 是全球增加速度最快的在線青少兒英語教育品牌,純北美外教 11 對 11 在線授課,經過互聯網的方式將中國小朋友與北美老師鏈接起來。VIPKID 爲了幫每一個孩子找到最適合本身的外教老師,會對外教在教學上的語言、技能等多層維度劃定數百個標籤,再結合智能算法進行師生匹配,向學員推薦最合適其本人的外教。c++

VIPKID 經過大數據和標籤來智能地進行師生匹配。當咱們把標籤抽象成括號 ( ),匹配過程簡化爲括號串的匹配,但願聰明的你來解決以下問題:判斷給定的括號序列是否合法且反迴文。算法

對於這樣標籤抽象組成的括號序列,咱們有以下定義:ide

合法的的括號序列:大數據

  • 空序列;
  • 若是AA、BB是合法的括號序列,那麼(A)(A)和ABAB都是合法的括號序列;

反迴文的括號序列:若是序列長度爲 LL,且字符從 00 開始編號,那麼任意的 S[i]S[i] 和 S[L-i-1]S[Li1] 對應的字符應該不一樣。(i 的取值範圍 0≤i≤L1 )ui

輸入格式

一行一個字符串 SS。spa

輸出格式

若是是合法且反迴文的串,輸出 "YES",不然輸出 "NO"。(均無雙引號)3d

數據規模

SS 長度小於10^1e6code

樣例輸入1

()()()

樣例輸出1

YES

樣例輸入2

()(())

樣例輸出2

NO
題意:括號匹配+判斷反迴文
 1 #include <bits/stdc++.h>
 2 
 3 using namespace std;
 4 
 5 int main()
 6 {
 7     ios::sync_with_stdio(0);
 8     cin.tie(0);
 9     cout.tie(0);
10 
11     string str;
12     bool kuohao,fanhuiwen;
13     stack<char> sc;
14     //while(cin>>str){
15     cin>>str;
16         kuohao=true;
17         fanhuiwen=true;
18         char tmp;
19         for(int i=0;i<str.size();i++){
20             if(str[i]=='('){
21                 sc.push(str[i]);
22             }else if(str[i]==')'){
23                 if(sc.empty()){
24                     kuohao=false;
25                     break;
26                 }else{
27                     tmp=sc.top(); sc.pop();
28                     if(tmp=='('){
29                         continue;
30                     }else{
31                         kuohao=false;
32                         break;
33                     }
34 
35                 }
36             }
37         }
38         if(!sc.empty()) kuohao=false;
39 
40         int strlen=str.size();
41         for(int i=0;i<=strlen/2;i++){
42             if(str[i]==str[strlen-i-1]){
43                 fanhuiwen=false;
44                 break;
45             }
46         }
47         if(kuohao&&fanhuiwen){
48             cout<<"YES"<<endl;
49         }else{
50             cout<<"NO"<<endl;
51         }
52     //}
53     return 0;
54 }
View Code

 

BC.

https://nanti.jisuanke.com/t/39457

樣例輸入

3
1 3 5
0 1 2
5
1 2 3 4 5

樣例輸出

0 1 1 2 2

題意: 按公式暴力,注意用long long 。

 1 #include <bits/stdc++.h>
 2 
 3 using namespace std;
 4 
 5 long long a[1000005],b[1000005],q[1000005];
 6 long long resu[1000005];
 7 
 8 int main()
 9 {
10     ios::sync_with_stdio(0);
11     cin.tie(0);
12     cout.tie(0);
13 
14     int n,Q;
15     cin>>n;
16     for(int i=0;i<n;i++){
17         cin>>a[i];
18     }
19     for(int i=0;i<n;i++){
20         cin>>b[i];
21     }
22     cin>>Q;
23     for(int i=0;i<Q;i++){
24         cin>>q[i];
25     }
26     long long minn=1e19;
27     for(int i=0;i<Q;i++){
28         minn=1e19;
29         long long tmp=0;
30         for(int j=0;j<n;j++){
31             long long chengji=(q[i]-a[j]);
32             tmp=chengji*chengji+b[j];
33             minn=min(minn,tmp);
34         }
35         resu[i]=minn;
36     }
37     for(int i=0;i<Q;i++){
38         cout<<resu[i]<<" ";
39     }
40     return 0;
41 }
View Code

D:未作

相關文章
相關標籤/搜索