➤ Problem Link : 349B. Color the Fence
✅ C++ Solution :
#include<bits/stdc++.h> using namespace std; int main() { int sum,mini=INT_MAX; cin>>sum; int arr[10]; for(int i=1;i<=9;i++) { cin>>arr[i]; mini=min(mini,arr[i]); } if(sum<mini) { cout<<"-1"; exit(0); } int l=sum/mini; string s=""; int tmp; int tmpsum=sum; for(int i=1;i<=l;i++) { for(int j=9;j>0;j--) { tmp=tmpsum-arr[j]; if(l==i) { if(tmp>=0) { s+=j+48; break; } } else if(tmp/(l-i) >= mini) { tmpsum-=arr[j]; s+=j+48; break; } } } cout<<s; }
Thank you for your patience reading. If you enjoyed this post, I’d be very grateful if you’d help it spread by emailing it to a friend, or sharing it on Whatsapp or Facebook.
😇Happy Learning!!