はい。
AtCoder Beginner Contest 015
C問題まで。
A - 高橋くんの研修
#include<bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=0;i<n;++i)
#define per(i,n) for(int i=n-1;i>=0;--i)
#define sc1(a) scanf("%d",&a)
#define sc2(a,b) scanf("%d %d",&a,&b)
#define sc3(a,b,c) scanf("%d %d %d",&a,&b,&c)
#define sl1(a) scanf("%lld",&a)
#define sl2(a,b) scanf("%lld %lld",&a,&b)
#define sl3(a,b,c) scanf("%lld %lld %lld",&a,&b,&c)
#define PI 3.1415926535897932
#define ll long long
#define print(a) cout << a << endl
int souwa(int a) {return (1+a)*a/2;}
int lcm(int a,int b) { return a*b/__gcd(a,b); }
bool sankaku(int a,int b,int c) {vector <int> t={a,b,c};sort(t.begin(),t.end()); return t.at(0)+t.at(1)>t.at(2);};
int main(){
string a,b;
cin >> a >> b;
cout << ((a.size()>b.size())?a:b) << endl;
return 0;
}
長さ比較してよしなに。
B - 高橋くんの集計
#include<bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=0;i<n;++i)
#define per(i,n) for(int i=n-1;i>=0;--i)
#define sc1(a) scanf("%d",&a)
#define sc2(a,b) scanf("%d %d",&a,&b)
#define sc3(a,b,c) scanf("%d %d %d",&a,&b,&c)
#define sl1(a) scanf("%lld",&a)
#define sl2(a,b) scanf("%lld %lld",&a,&b)
#define sl3(a,b,c) scanf("%lld %lld %lld",&a,&b,&c)
#define PI 3.1415926535897932
#define ll long long
#define print(a) cout << a << endl
int souwa(int a) {return (1+a)*a/2;}
int lcm(int a,int b) { return a*b/__gcd(a,b); }
bool sankaku(int a,int b,int c) {vector <int> t={a,b,c};sort(t.begin(),t.end()); return t.at(0)+t.at(1)>t.at(2);};
int main(){
int mod=1000000007;
int n,m,x,y,cnt=0,ans=0;
string s,t;
cin >> n;
rep(i,n) {
cin >> x;
if(x>0) { cnt++; ans+=x; }
}
print((ans+cnt-1)/cnt);
return 0;
}
繰り上げになるように割り算。
C - 高橋くんのバグ探し
#include<bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=0;i<n;++i)
#define per(i,n) for(int i=n-1;i>=0;--i)
#define sc1(a) scanf("%d",&a)
#define sc2(a,b) scanf("%d %d",&a,&b)
#define sc3(a,b,c) scanf("%d %d %d",&a,&b,&c)
#define sl1(a) scanf("%lld",&a)
#define sl2(a,b) scanf("%lld %lld",&a,&b)
#define sl3(a,b,c) scanf("%lld %lld %lld",&a,&b,&c)
#define PI 3.1415926535897932
#define ll long long
#define print(a) cout << a << endl
int souwa(int a) {return (1+a)*a/2;}
int lcm(int a,int b) { return a*b/__gcd(a,b); }
bool sankaku(int a,int b,int c) {vector <int> t={a,b,c};sort(t.begin(),t.end()); return t.at(0)+t.at(1)>t.at(2);};
int main(){
int mod=1000000007;
int n,k,m,x,y,cnt=0,ans=0;
cin >> n >> k;
vector<vector<int>> t(6,vector<int> (6,0));
rep(i,n) rep(j,k) cin >> t.at(i).at(j);
rep(a,k) rep(b,k) rep(c,k) rep(d,k) rep(e,k) {
x=t.at(0).at(a)^t.at(1).at(b)^t.at(2).at(c)^t.at(3).at(d)^t.at(4).at(e);
if (x==0) ans=1;
}
cout << ((ans==1)?"Found":"Nothing") << endl;
return 0;
}
再帰書いたけど上手く動きませんでした草。配列がめっちゃ小さい、0とxorとっても解に影響しない。なら何が何でも全部5重ループでいいわ。
でACしました。