zoukankan      html  css  js  c++  java
  • 所谓的日常 #8

    div.2

    CodeForces 475A Bayan Bus

    题意就是安排K个人的座位并且输出咯。

    嘛,这是我以前的代码...好像比大家都长哈哈哈...

     1 #include <bits/stdc++.h>
     2 
     3 int n;
     4 int A[4][50];
     5 
     6 void paint() {
     7     for (int i = 0; n; ++ i) {
     8         if (i == 0) {
     9             int c = std::min(4,n);
    10             for (int j = 0; j < c; ++ j) {
    11                 A[j][i] = 1;
    12             }
    13             n -= c;
    14         } else {
    15             int c = std::min(3,n);
    16             for (int j = 0; j < c; ++ j) {
    17                 A[j][i] = 1;
    18             }
    19             std::swap(A[3][i],A[2][i]);
    20             n -= c;
    21         }
    22     }
    23     putchar('+');
    24     for (int i = 0; i < 12; ++ i) {
    25         printf("--");
    26     }
    27     putchar('+');
    28     puts("");
    29     for (int i = 0; i < 4; ++ i) {
    30         putchar('|');
    31         for (int j = 0; j < 11; ++ j) {
    32             if (i==2) {
    33                 if (A[i][j]) putchar('O');
    34                 else if (j==0) putchar('#');
    35                 else putchar('.');
    36             } else {
    37                 if (A[i][j]) putchar('O');
    38                 else putchar('#');
    39             }
    40             putchar('.');
    41         }
    42         if (i==2) putchar('.');
    43         else putchar('|');
    44         if (i==0) putchar('D');
    45         else putchar('.');
    46         if (i==0 || i==3) puts("|)");
    47         else puts("|");
    48     }
    49     putchar('+');
    50     for (int i = 0; i < 12; ++ i) {
    51         printf("--");
    52     }
    53     putchar('+');
    54     puts("");
    55 }
    56 
    57 int main() {
    58     scanf("%d",&n);
    59     paint();
    60     return 0;
    61 }
    View Code

    div.1

    CodeForces 466C Number of Ways

    把长度为n(<=5e5)的数组分成三段非空段且和相等 的方案数。

    所以枚举第二段末尾位置,拿一个cnt记录之前有多少满足条件的第一段末尾 就好啦。

     1 #include <bits/stdc++.h>
     2 typedef long long LL;
     3 
     4 const int N = 500000 + 5;
     5 int A[N],n;
     6 
     7 LL work() {
     8     LL sum = std::accumulate(A,A + n,0ll);
     9     if (sum % 3 != 0) return 0;
    10 
    11     LL now = 0,ret = 0,cnt = 0;
    12     for (int i = 0; i < n - 1; ++ i) {
    13         now += A[i];
    14         if (now == sum / 3 * 2) {
    15             ret += cnt;
    16         }
    17         if (now == sum / 3) {
    18             cnt ++;
    19         }
    20     }
    21     return ret;
    22 }
    23 
    24 int main() {
    25     scanf("%d",&n);
    26     for (int i = 0; i < n; ++ i) {
    27         scanf("%d",A + i);
    28     }
    29     printf("%I64d
    ",work());
    30 }
    View Code
  • 相关阅读:
    GateWay的简单使用
    SpringCloud项目注册到Nacos
    Hystrix整合Gateway
    Nginx配置socket.io集群
    windows搭建git服务
    解决gitLab上新建分支,idea中找不到对应分支问题
    mybatis mapper.xml的特殊操作符
    Chrome添加Axure RP插件
    idea Tomcat部署时没有update classes and resources
    缓存穿透,缓存击穿,缓存雪崩解决方案分析【转载】
  • 原文地址:https://www.cnblogs.com/zstuACM/p/5095139.html
Copyright © 2011-2022 走看看