2 solutions

  • 0
    @ 2025-5-11 14:59:30
    #include<bits/stdc++.h>
    using namespace std;
    int main()
    {
    	int k,g,m;cin>>k>>g>>m;
    	int mug=0,glass=0;
    	for(int i=1;i<=k;i++){
    		if(glass==g)glass=0;
    		else if(mug==0)mug=m;
    		else{
    			if(mug+glass>g){mug=mug-g+glass;glass=g;
    			;}
    			else glass=glass+mug,mug=0;
    		}
    	//	cout<<glass<<" "<<mug<<endl; 
    	}
    	cout<<glass<<' '<<mug;
    	return 0;
    }
    
    • 0
      @ 2025-4-25 13:49:14
      #include <bits/stdc++.h>
      using namespace std;
      
      int main() 
      {
      	int k,g,m;
      	int x=0,y=0,z;
      	cin>>k>>g>>m;
      	for(int i=0;i<k;i++)
      	{
      		if (x==g)x=0; //第一种操作 
      		else if(y==0)y=m; //第二种操作 
      		else //第三种操作 
      		{
      			z=min(g-x,y); //取决于第一个杯子可以装的和第二个杯子有的最小值 
      			x+=z,y-=z;
      		}
      	}
      	cout<<x<<" "<<y<<endl;
      	return 0;
      }
      
      
      • 1

      Information

      ID
      2341
      Time
      1000ms
      Memory
      256MiB
      Difficulty
      1
      Tags
      (None)
      # Submissions
      21
      Accepted
      4
      Uploaded By