1.17F题
#include <iostream>
using namespace std;
int a[4],b[10]={0,1,2,0,2,1,0},c[4];
int check(int w){
int sum=0;
for(int i=0;i<3;i++)
c[i] = a[i];
for(int i=w;i<7;i++){
if(c[b[i]]==0) break;
--c[b[i]];
++sum;
}
int weeks=min(c[0]/3,min(c[1]/2,c[2]/2));
c[0]-=weeks*3;
c[1]-=weeks*2;
c[2]-=weeks*2;
sum+=weeks*7;
for(int i=0; i < 7; i++){
if(c[b[i]]==0) break;
--c[b[i]];
++sum;
}
return sum;
}
int main()
{
for(int i=0;i<3;i++)
cin>>a[i];
if(a[0]==1&&a[1]==1&&a[2]==2){
cout<<"4"<<endl;
return 0;
}
int ans=0;
for(int i=0;i<7;i++){
ans=max(ans,check(i));
}
cout<<ans<<endl;
return 0;
}
## https://www.luogu.com.cn/problem/P2006
#include<iostream>
using namespace std;
int main()
{
int i,k,m,n,a,b,flag=0;
cin>>k>>m>>n;
for(i=1;i<=m;i++)
{
cin>>a>>b;
if((!a&&b)||(a&&(k/a*b>=n)))
{
cout<<i<<" ";
flag=1;
}
}
if(flag==0)
cout<<"-1";
return 0;
}