CF1230 致sb的A題和B題

首先,第一題fst了 2333

#include <bits/stdc++.h>
#define int long long
 
using namespace std ;
int s = 0;
signed main () {
    int a[10] ;
    for(int i = 1 ; i<= 4 ; i ++) {
        cin >>a[i] ;
        s += a[i] ;
    }
    sort(a+1,a+1+4) ;
    int flag = 1 ;
    if(a[1]+a[4]==a[2]+a[3] || a[1]+a[2]+a[3] == a[4]) {   // <-- 判斷條件一開始打錯了!!!!!
        puts("YES") ;
    } else {
        puts("NO") ;
    }
    
}

再者, B 題fst了

代碼如下

#include <bits/stdc++.h>
#define int long long
 
using namespace std ;
string s ;
int n  , k;
signed main () {
    cin >> k  >> n ;
    cin >> s ;
    if(k == 1) {
        if(n)
        puts("0") ;
        else cout << k << endl ; // <-- 錯因沒錯了
        return 0 ;
    }
    for(int i = 0 ; i < s.size()  ; i ++) {
        if(!n) break ;
        if(s[i] == '0') continue ;
        if(i == 0 && i != s.size()-1) {
            if(s[i] == '1') continue ;
            else s[i] = '1' , n -- ;
        }else {
            s[i] = '0' ;
            n -- ;
        }
    }
    for(int i = 0 ; i < s.size() ; i ++) cout << s[i] << "" ; 
}

1522713-20190926194444976-2126557917.png

反饋回來這個我蒙了............


#include <bits/stdc++.h>
#define int long long
 
using namespace std ;
string s ;
int n  , k;
signed main () {
    cin >> k  >> n ;
    cin >> s ;
    if(k == 1) {
        if(n)
        puts("0") ;
        else cout << s[0] << endl ; // 改一行
        return 0 ;
    }
    for(int i = 0 ; i < s.size()  ; i ++) {
        if(!n) break ;
        if(s[i] == '0') continue ;
        if(i == 0 && i != s.size()-1) {
            if(s[i] == '1') continue ;
            else s[i] = '1' , n -- ;
        }else {
            s[i] = '0' ;
            n -- ;
        }
    }
    for(int i = 0 ; i < s.size() ; i ++) cout << s[i] << "" ; 
}

所以我當時怎麼想的啊 = =

溜了溜了,我的祖國萬歲!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章