zoukankan      html  css  js  c++  java
  • 【csp】2018-3

    第一题 跳一跳

    题目:

    题意:浅显。qwq

    题解:2计数+1,到1就清空计数。

    代码:

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<algorithm>
     4 #include<cmath>
     5 #include<queue>
     6 #include<stack>
     7 #include<cstring>
     8 using namespace std;
     9 #define ll long long 
    10 #define INF 0x3f3f3f3f
    11 const int maxn = 1000+10;
    12 
    13 int main(){
    14     int cnt = 1;
    15     int sum = 0;
    16     int n;
    17     while(cin>>n && n){
    18         if(n == 2){
    19             sum += n * cnt;
    20             cnt++;
    21             //cout<<sum<<endl;
    22         }
    23         else{
    24             cnt = 1;
    25             sum += 1;
    26             //cout<<sum<<endl;
    27         }
    28 
    29     }
    30     cout<<sum<<endl;
    31     return 0;
    32 }
    View Code

    第二题 小球碰撞

    题目:

    题意:撞到墙壁或者两球相撞都要改变方向,问t秒后各个球的位置。

    题解:暴力,模拟。考虑边界。

    代码:

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<algorithm>
     4 #include<cmath>
     5 #include<queue>
     6 #include<stack>
     7 #include<cstring>
     8 using namespace std;
     9 #define ll long long 
    10 const int maxn = 100+10;
    11 
    12 int n,L,t;
    13 int a[maxn];
    14 int flag[maxn];
    15 
    16 void print(){
    17     for(int i = 1; i <= n ; i++){
    18         cout<<a[i]<<" ";
    19     }
    20     cout<<endl;
    21 }
    22 
    23 int main(){
    24     
    25     cin>>n>>L>>t;
    26     for(int i = 1 ; i <= n ;i++){
    27         cin>>a[i];
    28         flag[i] = 1;    //初始右
    29     }
    30 
    31     for(int i = 1 ; i <= t; i++){
    32         for(int j = 1 ; j <= n ; j++){
    33             a[j] += flag[j];
    34             if(a[j] == 0 || a[j] == L){
    35                 flag[j] = -flag[j];
    36             }
    37             for(int k = 1; k <= n ;k++){
    38                 if(a[j] == a[k] && j != k){
    39                     flag[j] = -flag[j];
    40                     flag[k] = -flag[k];
    41                 }                
    42             }
    43         } 
    44         //print();
    45     }
    46     print();
    47     return 0;
    48 }
    View Code
  • 相关阅读:
    where和having的区别
    lnmp环境安装
    Elasticsearch 日常维护命令
    Haproxy基础知识
    LVM常规操作记录梳理(扩容/缩容/快照等)
    Centos7下ELK+Redis日志分析平台的集群环境部署记录
    CentOS7.2下安装php加速软件Xcache
    ELK实时日志分析平台环境部署
    Docker容器时间跟主机时间保持同步的操作记录
    ELK基础架构解析
  • 原文地址:https://www.cnblogs.com/Asumi/p/9607648.html
Copyright © 2011-2022 走看看