2 条题解

  • 1
    @ 2023-11-19 12:09:35
    #include <iostream>
    using namespace std;
    long long n,l,r;
    int main()
    {
    	cin>>n>>l>>r;
    	if(l/n==r/n)
        {
          cout<<r%n;
        }
    	else
        {
          cout<<n-1;
        }
    	return 0;
    }
    
    • 0
      @ 2023-6-20 19:23:15

      思路

      题意是求给定的区间[L,R][L,R]之间的数%nn的最大值

      • 情况1:RR~LL间有数%nn可以等于n1n-1(最优解)时,输出n1n-1
      • 情况2:如果没有,那RR%nn必定最接近最优解,输出RR%nn

      code:

      #include <bits/stdc++.h>
      using namespace std;
      
      int n,l,r;
      
      signed main()
      {
      	//freopen("candy.in","r",stdin);
      	//freopen("candy.out","w",stdout);
      	scanf("%d%d%d",&n,&l,&r);
      	int x = l / n * n;//倍数
      	if(x + n - 1 <= r) 
      	{
      		printf("%d",n - 1);
      		return 0;
      	}
      	printf("%d",r - x);
      	return 0;
      }
      
      • 1

      信息

      ID
      1475
      时间
      1000ms
      内存
      256MiB
      难度
      6
      标签
      递交数
      148
      已通过
      48
      上传者