昨天这场CF打的还挺爽的,不过就是没咋涨Rating,没把握好涨Rating的机会。。
本来可以过四题的,,但是很失败,重评后跪了两道。。唉:-(
A. Vasya and Football
思路:给每个人计数,黄牌+1,红牌+2。
当数字第一次超过2时输出。
题目链接:A. Vasya and Football
AC代码:
#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#include <string>#include <cmath>using namespace std;struct node { char name[25]; int a[105];}home, away;int main(){ for(int i=0; i <br> <br> <p></p> <p><br> </p> <p></p> <p><strong>B. Vasya and Wrestling</strong></p> <p><strong>思路:先用sum是否为0判断分高的,sum>0 => first, sum second,</strong></p> <p><strong>sum=0则相同,再判断字典序,如果再相同则判断最后一次动作。</strong></p> <p><strong>注意sum需要long long。</strong></p> <strong><br> </strong> <p><strong>题目链接:B. Vasya and Wrestling</strong></p> <p><strong><br> </strong></p> <strong>AC代码:</strong> <p><br> </p> <p></p> <pre name="code" class="sycode">#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#include <string>#include <cmath>using namespace std;int judge(int a[], int b[], int na, int nb){ int i, j; for(i=0, j=0; i<na j i if>b[i])return 1; else if(a[i]<b if else main long sum="0;" int n a b na="0," nb="0;" scanf t for i="0;">0)a[na++] = t; else if(t0)printf("first\n"); else if(sum0)printf("first\n"); else if(judge(a,b,na,nb)==2&&t <br> <br> </b><p></p> <p><br> </p> <p><strong>C. Vasya and Basketball</strong><br> </p> <p> </p> <p><strong>思路:给所有球排序,先把全部都赋值为3,然后依次减为2,再判断其中间过程的MAX</strong></p> <p><strong>昨天做题的时候有点小混乱。。</strong></p> <p><strong><br> </strong></p> <p><strong>题目链接:C. Vasya and Basketball</strong></p> <p><strong><br> </strong></p> <p><strong>AC代码:</strong></p> <p><br> </p> <p></p> <pre name="code" class="sycode">#include <cstdio>#include <cstring>#include <iostream> #include <queue> #include <map> #include <set> #include <vector> #include <algorithm> using namespace std; #define LL long long #define INF 0xfffffffpair<int> p[400010];int main(){ int n, m; scanf("%d", &n); for(int i=0; i<n i scanf p for sort int as="n*3," bs="m*3," ansa ansb max="-0xfffffff;" if>MAX) { MAX=as-bs; ansa=as; ansb=bs; } } if(p[i].second==1) as--; else bs--; } printf("%d:%d\n", ansa, ansb); return 0;}</n></int></algorithm></vector></set></map></queue></iostream></cstring></cstdio>
D. Vasya and Chess
思路:貌似这题有点水。。
AC代码:
#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#include <string>#include <cmath>using namespace std;int main(){ int n; scanf("%d", &n); if(n%2==1) printf("black\n"); else if(n%2==0) { printf("white\n1 2\n"); } return 0;}</cmath></string></algorithm></iostream></cstring></cstdio>