网站二维码制作,有源码怎么在本地网站搭建,石景山网站建设推广,网站模板双语A - Weak Beats
链接 :
A - Weak Beats
思路 :
模拟即可,如果在偶数位上出现了非0得元素#xff0c;直接输出No后返回即可#xff0c;循环顺利结束的话#xff0c;就直接输出Yes;
代码 :
#includebits/stdc.h
#define IOS ios::sy…A - Weak Beats
链接 :
A - Weak Beats
思路 :
模拟即可,如果在偶数位上出现了非0得元素直接输出No后返回即可循环顺利结束的话就直接输出Yes;
代码 :
#includebits/stdc.h
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define endl \nusing namespace std;
typedef long long LL;
int gcd(int a,int b){ return b0 ? a : gcd(b,a%b); }
int lcm(int a,int b){ if(a0||b0) return 0; return (a*b)/gcd(a,b); }
bool is_prime(int x){if(x2) return false;
for(int i2;ix/i;i) if(x%i0) return false; return true;}
//numbers.erase(std::unique(numbers.begin(), numbers.end()), numbers.end()); // 去重操作
const int N 2e510;
string s;inline void solve(){cins;s s;for(int i2;i16;i){if(i%20){if(s[i]!0){cout No endl;return ;}}}cout Yes endl;return ;
}int main()
{IOSint _ 1;// cin _;while(_ --) solve();return 0;
}
B - Round-Robin Tournament
链接 :
B - Round-Robin Tournament
思路 :
这一题考察得就是排序
将题目给的数据读入之后按照题目所给得条件排序即可 : sort(p,pn,cmp),cmp是自己重写得比较方法;
代码 :
#includebits/stdc.h
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define endl \nusing namespace std;
typedef long long LL;
int gcd(int a,int b){ return b0 ? a : gcd(b,a%b); }
int lcm(int a,int b){ if(a0||b0) return 0; return (a*b)/gcd(a,b); }
bool is_prime(int x){if(x2) return false;
for(int i2;ix/i;i) if(x%i0) return false; return true;}
//numbers.erase(std::unique(numbers.begin(), numbers.end()), numbers.end()); // 去重操作
const int N 110;
int n;
string s[N];
struct P{int nb;int win;
}p[N];bool cmp(const P p1,const P p2){if(p1.win ! p2.win)return p1.win p2.win;return p1.nb p2.nb;
}inline void solve(){cinn;for(int i0;in;i) cins[i];for(int i0;in;i){p[i].nb i;int wi 0;for(int j0;jn;j){if(s[i][j]o) wi;}p[i].win wi;}sort(p,pn,cmp);for(int i0;in;i){cout p[i].nb 1 ;}return ;
}int main()
{IOSint _ 1;// cin _;while(_ --) solve();return 0;
}
C - World Tour Finals
链接 :
C - World Tour Finals
思路 :
将m道题中每道题的分数记录在a数组中将n个选手的做题情况记录在s数组中;在数组s的读入过程中将n位选手的当前分数记录在nb数组中然后开始结果的处理得到n位选手中当前得分的最大值ma;对于每位选手如果要成为第一那么按照贪心的思想应该先做分数较大且未做的题目然后模拟即可
代码 :
#includebits/stdc.h
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define endl \nusing namespace std;
typedef long long LL;const int N 108;
int n,m;
int a[N];
int nb[N];
string s[N];inline void solve(){cinnm;for(int i1;im;i) cina[i];//m道题的分数 int ma 0; for(int i1;in;i){cins[i];int nbv 0;for(int j0;jm;j){if(s[i][j]o) nbv a[j1];}nb[i] nbv i;ma max(ma,nb[i]);}for(int i1;in;i){int cha ma - nb[i];if(cha 0){cout 0 endl;continue;}vectorint num;for(int j0;jm;j)if(s[i][j]x) num.push_back(a[j1]);sort(num.begin(),num.end());int t 0;for(int knum.size()-1;k0;k--){cha - num[k];t;if(cha 0) break;}cout t endl;}return ;
}int main()
{IOSint _ 1;// cin _;while(_ --) solve();return 0;
}
D - Merge Slimes
链接 :
D - Merge Slimes
思路 :
用hash表按照题意模拟即可
注意要开long long !!!
代码 :
#includebits/stdc.h
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);using namespace std;
typedef long long LL;
int n,ans;
mapLL,LL mp;inline void solve(){cinn;for(int i1;in;i){int s,c ; cinsc;mp[s] c;}for(auto it : mp){ans it.second % 2;mp[it.first * 2] it.second /2 ;}cout ans;
}int main()
{IOSint _ 1;while(_ --) solve();return 0;
}
欢迎交流