周赛。。。。

分糖果

分糖果

题意

要篮子里有不少于 n 块糖果,幼儿园的所有 n 个小朋友(包括你自己)都从篮子中拿走恰好一块糖,直到篮子里的糖数量少于 n 块。此时篮子里剩余的糖果均归你所有——这些糖果是作为你搬糖果的奖励。

思路
  1. 这个程序的思路是通过判断l/n和r/n是否相等来确定是否能够拿到奖励。如果l/n和r/n相等,说明在篮子里有不少于n块糖果,可以进行分糖。此时输出r%n,表示剩余的糖果数就是作为奖励的糖果数量。
  2. 如果l/n和r/n不相等,说明无法拿到奖励,此时输出n-1,表示无法得到奖励。
坑点
  1. 找不到规律
实现步骤
  1. 这个程序的思路是通过判断l/n和r/n是否相等来确定是否能够拿到奖励。如果l/n和r/n相等,说明在篮子里有不少于n块糖果,可以进行分糖。此时输出r%n,表示剩余的糖果数就是作为奖励的糖果数量。
  2. 如果l/n和r/n不相等,说明无法拿到奖励,此时输出n-1,表示无法得到奖励
代码
#include
#include
using namespace std;
int n,l,r;
int main(){
        cin>>n>>l>>r;
        if(l/n==r/n){
           cout<<r%n;	
		}
        else {
		cout<<n-1;
	}
        return 0;
}
 
总结

要理解题目,绕出题目意思

———————————————————————————————————————————————————————————————————————————————————————

爱与愁的心痛

爱与愁的心痛

题意

连续 m 个刺痛值的和的最小值是多少

思路

  1. 首先初始化一个变量min为一个较大的值199999,用来存放和的最小值。
  2. 两层循环,第一层循环遍历表示m长度的数组有几个,就是n-m+1,内层循环计算长度为m的子数组的和,并更新min的值。要及时清零
  3. 最后输出min即为子数组和的最小值。

坑点

  1. m长度的数组有几个的规律找不出来

算法

找最小值

实现步骤
  1. 首先初始化一个变量min为一个较大的值199999,用来存放和的最小值。
  2. 两层循环,第一层循环遍历表示m长度的数组有几个,就是n-m+1,内层循环计算长度为m的子数组的和,并更新min的值。
  3. 及时把第二个循环中的sum赋0清空;
  4. 最后输出min即为子数组和的最小值。
代码
#include 
#include 
using namespace std;
int main(){
        int n,m;
        scanf("%d %d",&n,&m);
        int a[110000],sum=0;    
        int min=199999;
        for(int i=1;i<=n;i++){
                cin>>a[i];
        }
        for(int i=1;i<=n-m+1;i++){
                for(int j=1;j<=m;j++){
                        sum+=a[i+j-1];
                }
                if(sum<min){
                min=sum;
            }
                sum=0;
        }
        cout<<min;
        return 0;
} 
 

题意

x

思路

  1. x
  2. x
  3. x

坑点

  1. x
  2. x
  3. x

算法一:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

算法二:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

总结

x

题意

x

思路

  1. x
  2. x
  3. x

坑点

  1. x
  2. x
  3. x

算法一:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

算法二:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

总结

x

题意

x

思路

  1. x
  2. x
  3. x

坑点

  1. x
  2. x
  3. x

算法一:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

算法二:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

总结

x

题意

x

思路

  1. x
  2. x
  3. x

坑点

  1. x
  2. x
  3. x

算法一:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

算法二:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

总结

x

题意

x

思路

  1. x
  2. x
  3. x

坑点

  1. x
  2. x
  3. x

算法一:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

算法二:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

总结

x

题意

x

思路

  1. x
  2. x
  3. x

坑点

  1. x
  2. x
  3. x

算法一:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

算法二:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

总结

x

题意

x

思路

  1. x
  2. x
  3. x

坑点

  1. x
  2. x
  3. x

算法一:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

算法二:XX+XX

时间复杂度

$

实现步骤
  1. x
  2. x
  3. x
代码
 
 

总结

x

你可能感兴趣的:(算法)