File tree Expand file tree Collapse file tree 3 files changed +15
-21
lines changed Expand file tree Collapse file tree 3 files changed +15
-21
lines changed Original file line number Diff line number Diff line change 11#include < iostream>
2-
32using namespace std ;
4-
53int main () {
64 int a;
75 while (scanf (" %d" ,&a)!=EOF) {
8- int minimun =0 ,maximun =0 ;
9- if (a%2 ==0 ) {
10- minimun=a/ 4 +(a% 4 ) /2 ;
11- maximun=a /2 ;
6+ int maxinum =0 ,mininum =0 ;
7+ if (a%2 ==0 ){
8+ maxinum=a /2 ;
9+ mininum=a/ 4 +(a% 4 ) /2 ;
1210 }
13- printf (" %d %d\n " ,minimun,maximun );
11+ printf (" %d %d\n " ,mininum,maxinum );
1412 }
1513 return 0 ;
1614}
Original file line number Diff line number Diff line change 11#include < iostream>
22#include < algorithm>
3-
43using namespace std ;
54/* *
65¿¼ÂÇÐÔ¼Û±È×î¸ßÓÅÏÈ
@@ -22,21 +21,20 @@ int main() {
2221 while (scanf (" %d%d" ,&m,&n)!=EOF) {
2322 if (m==-1 &&n==-1 )break ;
2423 for (int i=0 ; i<n; i++) {
25- scanf (" %lf%lf" ,&bean[i].weight ,&bean[i].cost );
24+ scanf (" %lf%lf" ,&bean[i].weight ,&bean[i].weight );
2625 }
2726 sort (bean,bean+n,Compare);
2827 double answer=0 ;
2928 for (int i=0 ; i<n; i++) {
30- if (m>bean[i].cost ) {
31- answer+=bean[i].weight ;
29+ if (m>=bean[i].cost ) {
3230 m-=bean[i].cost ;
31+ answer+=bean[i].weight ;
3332 } else {
34- answer+=(bean[i].weight / bean[i].cost )*m ;
33+ answer+=(m/ bean[i].cost )* bean[i].weight ;
3534 break ;
3635 }
3736 }
38- printf (" %0 .3f\n " ,answer);
37+ printf (" %.3f\n " ,answer);
3938 }
40-
4139 return 0 ;
4240}
Original file line number Diff line number Diff line change 11#include < iostream>
22#include < algorithm>
3-
43using namespace std ;
54/* *
65贪心策略:最先结束最优先
@@ -12,25 +11,24 @@ struct Program {
1211 int endTime;
1312};
1413
15- Program programs[MAXN];
16-
1714bool Compare (Program x,Program y) {
1815 return x.endTime <y.endTime ;
1916}
2017
2118int main () {
2219 int n;
20+ Program program[MAXN];
2321 while (scanf (" %d" ,&n)!=EOF) {
2422 if (n==0 )break ;
2523 for (int i=0 ; i<n; i++) {
26- scanf (" %d%d" ,&programs [i].startTime ,&programs [i].endTime );
24+ scanf (" %d%d" ,&program [i].startTime ,&program [i].endTime );
2725 }
28- sort (programs,programs +n,Compare);
26+ sort (program,program +n,Compare);
2927 int currentTime=0 ,answer=0 ;
3028 for (int i=0 ; i<n; i++) {
31- if (programs [i].startTime >=currentTime ) {
29+ if (currentTime<=program [i].startTime ) {
3230 answer++;
33- currentTime=programs [i].endTime ;
31+ currentTime=program [i].endTime ;
3432 }
3533 }
3634 printf (" %d\n " ,answer);
You can’t perform that action at this time.
0 commit comments